Skip to content

Commit 924fbbd

Browse files
authored
Merge pull request #437 from Countly/staging
Staging 7.7
2 parents b5d60e4 + 679b97e commit 924fbbd

File tree

20 files changed

+364
-192
lines changed

20 files changed

+364
-192
lines changed

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
## 24.7.7
2+
* Mitigated an issue where an automatically closed autostopped view's duration could have increased when opening new views
3+
* Mitigated an issue where, on Android 35 and above, the navigation bar was overlapping with the content display.
4+
5+
## 24.7.6
6+
* Added support for localization of content blocks.
7+
8+
* Mitigated an issue where visibility could have been wrongly assigned if a view was closed while going to background. (Experimental!)
9+
* Fixed a bug where passing the global content callback was not possible.
10+
* Mitigated an issue related to content actions navigation.
11+
* Mitigated an issue that parsing internal content event segmentation.
12+
113
## 24.7.5
214
* ! Minor breaking change ! All active views will now automatically stop when consent for "views" is revoked.
315

app-kotlin/src/main/java/ly/count/android/demo/kotlin/App.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,9 @@ class App : Application() {
2727
.setDeviceId(
2828
"myDeviceId"
2929
)
30-
.enableCrashReporting()
31-
.setRecordAllThreadsWithCrash()
3230
.setLoggingEnabled(true)
33-
.setViewTracking(false)
31+
32+
countlyConfig.crashes.enableCrashReporting().enableRecordAllThreadsWithCrash()
3433

3534
Countly.sharedInstance().init(countlyConfig)
3635
}

app-native/src/main/java/ly/count/android/demo/crash/App.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,11 @@ public class App extends Application {
2525

2626
CountlyConfig config = new CountlyConfig(this, COUNTLY_APP_KEY, COUNTLY_SERVER_URL).setDeviceId("4432")
2727
.setLoggingEnabled(true)
28-
.enableCrashReporting()
29-
.setViewTracking(true)
28+
.enableAutomaticViewTracking()
3029
.setRequiresConsent(false);
30+
31+
config.crashes.enableCrashReporting();
32+
3133
Countly.sharedInstance().init(config);
3234

3335
CountlyNative.initNative(getApplicationContext());

app/src/main/java/ly/count/android/demo/ActivityExampleAutoViewTracking.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import android.os.Bundle;
55
import android.view.View;
66
import android.widget.Toast;
7+
import androidx.annotation.NonNull;
78
import androidx.appcompat.app.AppCompatActivity;
89
import ly.count.android.sdk.Countly;
910

@@ -40,7 +41,6 @@ public void onClickStartView2(View v) {
4041
Toast.makeText(getApplicationContext(), "Clicked startView 2", Toast.LENGTH_SHORT).show();
4142
}
4243

43-
4444
public void onClickPauseViewWithID(View v) {
4545
Countly.sharedInstance().views().pauseViewWithID(viewID);
4646
Toast.makeText(getApplicationContext(), "Clicked pauseViewWithID 1", Toast.LENGTH_SHORT).show();
@@ -99,9 +99,8 @@ public void onStop() {
9999
}
100100

101101
@Override
102-
public void onConfigurationChanged(Configuration newConfig) {
102+
public void onConfigurationChanged(@NonNull Configuration newConfig) {
103103
super.onConfigurationChanged(newConfig);
104104
Countly.sharedInstance().onConfigurationChanged(newConfig);
105105
}
106-
107106
}

app/src/main/java/ly/count/android/demo/ActivityExampleFeedback.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import android.os.Bundle;
44
import android.util.Log;
55
import android.view.View;
6+
import android.widget.Button;
67
import android.widget.Toast;
78
import androidx.appcompat.app.AppCompatActivity;
89
import java.util.List;
@@ -23,6 +24,27 @@ public class ActivityExampleFeedback extends AppCompatActivity {
2324
public void onCreate(Bundle savedInstanceState) {
2425
super.onCreate(savedInstanceState);
2526
setContentView(R.layout.activity_example_feedback);
27+
28+
final Button presentSurvey = findViewById(R.id.presentSurvey);
29+
presentSurvey.setOnClickListener(new View.OnClickListener() {
30+
@Override public void onClick(View v) {
31+
Countly.sharedInstance().feedback().presentSurvey(ActivityExampleFeedback.this);
32+
}
33+
});
34+
35+
final Button presentRating = findViewById(R.id.presentRating);
36+
presentRating.setOnClickListener(new View.OnClickListener() {
37+
@Override public void onClick(View v) {
38+
Countly.sharedInstance().feedback().presentRating(ActivityExampleFeedback.this);
39+
}
40+
});
41+
42+
final Button presentNPS = findViewById(R.id.presentNPS);
43+
presentNPS.setOnClickListener(new View.OnClickListener() {
44+
@Override public void onClick(View v) {
45+
Countly.sharedInstance().feedback().presentNPS(ActivityExampleFeedback.this);
46+
}
47+
});
2648
}
2749

2850
public void onClickViewOther02(View v) {

app/src/main/java/ly/count/android/demo/App.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@
2525
import java.util.concurrent.ConcurrentHashMap;
2626
import ly.count.android.sdk.Countly;
2727
import ly.count.android.sdk.CountlyConfig;
28-
import ly.count.android.sdk.CrashFilterCallback;
28+
import ly.count.android.sdk.CrashData;
29+
import ly.count.android.sdk.GlobalCrashFilterCallback;
2930
import ly.count.android.sdk.ModuleLog;
3031
import ly.count.android.sdk.messaging.CountlyConfigPush;
3132
import ly.count.android.sdk.messaging.CountlyPush;
@@ -171,17 +172,6 @@ public void onCreate() {
171172
}
172173
}
173174
})
174-
175-
.enableCrashReporting()
176-
.setRecordAllThreadsWithCrash()
177-
.setCustomCrashSegment(customCrashSegmentation)
178-
.setCrashFilterCallback(new CrashFilterCallback() {
179-
@Override
180-
public boolean filterCrash(String crash) {
181-
return crash.contains("crash");
182-
}
183-
})
184-
185175
.enableAutomaticViewTracking()
186176
// uncomment the line below to enable auto enrolling the user to AB experiments when downloading RC data
187177
//.enrollABOnRCDownload()
@@ -234,6 +224,16 @@ public boolean filterCrash(String crash) {
234224

235225
.setUserProperties(customUserProperties);
236226

227+
config.crashes
228+
.enableCrashReporting()
229+
.enableRecordAllThreadsWithCrash()
230+
.setCustomCrashSegmentation(customCrashSegmentation)
231+
.setGlobalCrashFilterCallback(new GlobalCrashFilterCallback() {
232+
@Override public boolean filterCrash(CrashData crash) {
233+
return crash.getStackTrace().contains("secret");
234+
}
235+
});
236+
237237
config.apm.enableAppStartTimeTracking()
238238
.enableForegroundBackgroundTracking()
239239
.setAppStartTimestampOverride(applicationStartTimestamp);
Lines changed: 106 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1,100 +1,124 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
3-
android:orientation="vertical"
4-
android:layout_width="match_parent"
5-
android:layout_height="match_parent"
6-
android:gravity="center_vertical"
7-
android:paddingLeft="@dimen/activity_horizontal_margin"
8-
android:paddingRight="@dimen/activity_horizontal_margin"
9-
android:paddingTop="@dimen/activity_vertical_margin"
10-
android:paddingBottom="@dimen/activity_vertical_margin"
11-
>
12-
13-
<Button
14-
android:id="@+id/button42"
3+
android:orientation="vertical"
4+
android:layout_width="match_parent"
5+
android:layout_height="match_parent"
6+
android:gravity="center_vertical"
7+
android:paddingLeft="@dimen/activity_horizontal_margin"
8+
android:paddingRight="@dimen/activity_horizontal_margin"
9+
android:paddingTop="@dimen/activity_vertical_margin"
10+
android:paddingBottom="@dimen/activity_vertical_margin"
11+
>
12+
<ScrollView
1513
android:layout_width="match_parent"
16-
android:layout_height="wrap_content"
17-
android:onClick="onClickViewOther02"
18-
android:text="@string/ask_for_star_rating"
14+
android:layout_height="match_parent"
15+
>
16+
17+
<LinearLayout
18+
android:layout_width="match_parent"
19+
android:layout_height="wrap_content"
20+
android:orientation="vertical"
21+
android:gravity="center_vertical"
22+
android:layout_gravity="center_vertical"
23+
>
24+
<Button
25+
android:id="@+id/button42"
26+
android:layout_width="match_parent"
27+
android:layout_height="wrap_content"
28+
android:onClick="onClickViewOther02"
29+
android:text="@string/ask_for_star_rating"
1930
/>
2031

21-
<Button
22-
android:id="@+id/button46"
23-
android:layout_width="match_parent"
24-
android:layout_height="wrap_content"
25-
android:onClick="onClickViewOther07"
26-
android:text="@string/ask_for_rating_widget"
32+
<Button
33+
android:id="@+id/button46"
34+
android:layout_width="match_parent"
35+
android:layout_height="wrap_content"
36+
android:onClick="onClickViewOther07"
37+
android:text="@string/ask_for_rating_widget"
2738
/>
2839

29-
<Button
30-
android:id="@+id/button71"
31-
android:layout_width="match_parent"
32-
android:layout_height="wrap_content"
33-
android:onClick="onClickSendManualRating"
34-
android:text="Send Manual Rating"
40+
<Button
41+
android:id="@+id/button71"
42+
android:layout_width="match_parent"
43+
android:layout_height="wrap_content"
44+
android:onClick="onClickSendManualRating"
45+
android:text="Send Manual Rating"
3546
/>
36-
<Button
37-
android:id="@+id/button63"
38-
android:layout_width="match_parent"
39-
android:layout_height="wrap_content"
40-
android:onClick="onClickShowSurvey"
41-
android:text="Show survey"
47+
<Button
48+
android:id="@+id/presentNPS"
49+
android:layout_width="match_parent"
50+
android:layout_height="wrap_content" android:text="Present nps"/>
51+
<Button
52+
android:id="@+id/presentSurvey"
53+
android:layout_width="match_parent"
54+
android:layout_height="wrap_content" android:text="present survey"/>
55+
<Button
56+
android:id="@+id/presentRating"
57+
android:layout_width="match_parent"
58+
android:layout_height="wrap_content" android:text="present rating"/>
59+
<Button
60+
android:id="@+id/btnAvailableWidgets"
61+
android:layout_width="match_parent"
62+
android:layout_height="wrap_content"
63+
android:onClick="onClickShowAvailableFeedbackWidgets"
64+
android:text="Available feedback widgets"
4265
/>
43-
<Button
44-
android:id="@+id/button69"
45-
android:layout_width="match_parent"
46-
android:layout_height="wrap_content"
47-
android:onClick="onClickShowNPS"
48-
android:text="Show NPS"
66+
<Button
67+
android:id="@+id/button61"
68+
android:layout_width="match_parent"
69+
android:layout_height="wrap_content"
70+
android:onClick="onClickReportSurveyManually"
71+
android:text="Report Survey Manually"
4972
/>
50-
<Button
51-
android:id="@+id/button37"
52-
android:layout_width="match_parent"
53-
android:layout_height="wrap_content"
54-
android:onClick="onClickShowRating"
55-
android:text="show rating"
73+
<Button
74+
android:id="@+id/button38"
75+
android:layout_width="match_parent"
76+
android:layout_height="wrap_content"
77+
android:onClick="onClickReportRatingManually"
78+
android:text="Report Rating Manually"
5679
/>
57-
<Button
58-
android:id="@+id/btnAvailableWidgets"
59-
android:layout_width="match_parent"
60-
android:layout_height="wrap_content"
61-
android:onClick="onClickShowAvailableFeedbackWidgets"
62-
android:text="Available feedback widgets"
80+
<Button
81+
android:id="@+id/button62"
82+
android:layout_width="match_parent"
83+
android:layout_height="wrap_content"
84+
android:onClick="onClickReportNPSManually"
85+
android:text="Report NPS manually"
6386
/>
64-
<Button
65-
android:id="@+id/button61"
66-
android:layout_width="match_parent"
67-
android:layout_height="wrap_content"
68-
android:onClick="onClickReportSurveyManually"
69-
android:text="Report Survey Manually"
87+
<Button
88+
android:id="@+id/button63"
89+
android:layout_width="match_parent"
90+
android:layout_height="wrap_content"
91+
android:onClick="onClickShowSurvey"
92+
android:text="Show survey"
7093
/>
71-
<Button
72-
android:id="@+id/button38"
73-
android:layout_width="match_parent"
74-
android:layout_height="wrap_content"
75-
android:onClick="onClickReportRatingManually"
76-
android:text="Report Rating Manually"
94+
<Button
95+
android:id="@+id/button69"
96+
android:layout_width="match_parent"
97+
android:layout_height="wrap_content"
98+
android:onClick="onClickShowNPS"
99+
android:text="Show NPS"
77100
/>
78-
<Button
79-
android:id="@+id/button62"
80-
android:layout_width="match_parent"
81-
android:layout_height="wrap_content"
82-
android:onClick="onClickReportNPSManually"
83-
android:text="Report NPS manually"
101+
<Button
102+
android:id="@+id/button37"
103+
android:layout_width="match_parent"
104+
android:layout_height="wrap_content"
105+
android:onClick="onClickShowRating"
106+
android:text="show rating"
84107
/>
85-
<Button
86-
android:id="@+id/button34"
87-
android:layout_width="match_parent"
88-
android:layout_height="wrap_content"
89-
android:onClick="onClickRetrieveSurveyDataManually"
90-
android:text="Retrieve survey data manually"
108+
<Button
109+
android:id="@+id/button34"
110+
android:layout_width="match_parent"
111+
android:layout_height="wrap_content"
112+
android:onClick="onClickRetrieveSurveyDataManually"
113+
android:text="Retrieve survey data manually"
91114
/>
92-
<Button
93-
android:id="@+id/button35"
94-
android:layout_width="match_parent"
95-
android:layout_height="wrap_content"
96-
android:onClick="onClickRetrieveNPSDataManually"
97-
android:text="Retrieve nps data manually"
115+
<Button
116+
android:id="@+id/button35"
117+
android:layout_width="match_parent"
118+
android:layout_height="wrap_content"
119+
android:onClick="onClickRetrieveNPSDataManually"
120+
android:text="Retrieve nps data manually"
98121
/>
99-
122+
</LinearLayout>
123+
</ScrollView>
100124
</LinearLayout>

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ org.gradle.configureondemand=true
2222
android.useAndroidX=true
2323
android.enableJetifier=true
2424
# RELEASE FIELD SECTION
25-
VERSION_NAME=24.7.5
25+
VERSION_NAME=24.7.7
2626
GROUP=ly.count.android
2727
POM_URL=https://github.com/Countly/countly-sdk-android
2828
POM_SCM_URL=https://github.com/Countly/countly-sdk-android

0 commit comments

Comments
 (0)