Skip to content

Commit 4f2f7ad

Browse files
authored
Merge pull request #1981 from OneSignal/user-model/main
Merge user-model/main into main
2 parents 1d27d82 + d73bfc6 commit 4f2f7ad

File tree

839 files changed

+46231
-55789
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

839 files changed

+46231
-55789
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,10 @@ jobs:
2929
working-directory: OneSignalSDK
3030
run: |
3131
./gradlew ktlintCheck --console=plain
32-
- name: "[Test] Analyzing"
33-
working-directory: OneSignalSDK
34-
continue-on-error: true
35-
run: |
36-
./gradlew detekt --console=plain
3732
- name: "[Test] SDK Unit Tests"
3833
working-directory: OneSignalSDK
3934
run: |
40-
./gradlew unittest:testReleaseUnitTest --console=plain
35+
./gradlew test --console=plain
4136
- name: Unit tests results
4237
if: failure()
4338
uses: actions/upload-artifact@v3

.github/workflows/set_response_time.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
- uses: actions/checkout@v3
1818
with:
1919
token: ${{ secrets.GITHUB_TOKEN }}
20-
- run: npm install @octokit/action@6.0.6
20+
- run: npm install @octokit/action
2121
- uses: actions/github-script@v6
2222
id: set-time
2323
with:

Examples/OneSignalDemo/app/agconnect-services.json

Lines changed: 54 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,75 @@
11
{
22
"agcgw":{
3-
"backurl":"connect-dre.dbankcloud.cn",
4-
"url":"connect-dre.hispace.hicloud.com",
5-
"websocketbackurl":"connect-ws-dre.hispace.dbankcloud.cn",
6-
"websocketurl":"connect-ws-dre.hispace.dbankcloud.com"
3+
"backurl":"connect-dre.hispace.hicloud.com",
4+
"url":"connect-dre.dbankcloud.cn",
5+
"websocketbackurl":"connect-ws-dre.hispace.dbankcloud.com",
6+
"websocketurl":"connect-ws-dre.hispace.dbankcloud.cn"
77
},
88
"agcgw_all":{
9-
"CN":"connect-drcn.hispace.hicloud.com",
10-
"CN_back":"connect-drcn.dbankcloud.cn",
11-
"DE":"connect-dre.hispace.hicloud.com",
12-
"DE_back":"connect-dre.dbankcloud.cn",
13-
"RU":"connect-drru.hispace.hicloud.com",
14-
"RU_back":"connect-drru.dbankcloud.cn",
15-
"SG":"connect-dra.hispace.hicloud.com",
16-
"SG_back":"connect-dra.dbankcloud.cn"
9+
"CN":"connect-drcn.dbankcloud.cn",
10+
"CN_back":"connect-drcn.hispace.hicloud.com",
11+
"DE":"connect-dre.dbankcloud.cn",
12+
"DE_back":"connect-dre.hispace.hicloud.com",
13+
"RU":"connect-drru.hispace.dbankcloud.ru",
14+
"RU_back":"connect-drru.hispace.dbankcloud.cn",
15+
"SG":"connect-dra.dbankcloud.cn",
16+
"SG_back":"connect-dra.hispace.hicloud.com"
17+
},
18+
"websocketgw_all":{
19+
"CN":"connect-ws-drcn.hispace.dbankcloud.cn",
20+
"CN_back":"connect-ws-drcn.hispace.dbankcloud.com",
21+
"DE":"connect-ws-dre.hispace.dbankcloud.cn",
22+
"DE_back":"connect-ws-dre.hispace.dbankcloud.com",
23+
"RU":"connect-ws-drru.hispace.dbankcloud.ru",
24+
"RU_back":"connect-ws-drru.hispace.dbankcloud.cn",
25+
"SG":"connect-ws-dra.hispace.dbankcloud.cn",
26+
"SG_back":"connect-ws-dra.hispace.dbankcloud.com"
1727
},
1828
"client":{
1929
"cp_id":"5190001000034239317",
20-
"product_id":"9105385871709201822",
21-
"client_id":"336482233541985344",
22-
"client_secret":"5E30C748A012DE67BAF83E2C542A4AB694CCAA89F1D5E8FCEFA57E0F28A077FB",
23-
"project_id":"9105385871709201822",
24-
"app_id":"102009847",
25-
"api_key":"CV68fkx9E2fU8Fv/v3zbuO8+rCjJ8w6QiMha7ZJUpIGTxs08n0/ddVXbOueUKBtxf3sD+ni8WPx27htLHhtse5eP5VrT",
26-
"package_name":"com.onesignal.example"
30+
"product_id":"388421841221340564",
31+
"client_id":"1103097158011211392",
32+
"client_secret":"14843C60CAFDCFD5E50025C14864697AFF55886BCF00558E8C817F141E0B4704",
33+
"project_id":"388421841221340564",
34+
"app_id":"107780279",
35+
"api_key":"DAEDAN06wwm3fsiHbQaQzugegFDUc6lpsR9VZGRNoWEbjHpDphR5rSbobUr5/ohT1WlRTyIykjr4GzzEJ/jSxlziFmXF/8e56HAYiw==",
36+
"package_name":"com.onesignal.sdktest"
2737
},
2838
"oauth_client":{
29-
"client_id":"102009847",
39+
"client_id":"107780279",
3040
"client_type":1
3141
},
3242
"app_info":{
33-
"app_id":"102009847",
34-
"package_name":"com.onesignal.example"
43+
"app_id":"107780279",
44+
"package_name":"com.onesignal.sdktest"
3545
},
3646
"service":{
3747
"analytics":{
3848
"collector_url":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn",
49+
"collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com",
50+
"collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn",
51+
"collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn",
52+
"collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn",
3953
"resource_id":"p1",
4054
"channel_id":""
4155
},
56+
"edukit":{
57+
"edu_url":"edukit.edu.cloud.huawei.com.cn",
58+
"dh_url":"edukit.edu.cloud.huawei.com.cn"
59+
},
4260
"search":{
4361
"url":"https://search-dre.cloud.huawei.com"
4462
},
4563
"cloudstorage":{
46-
"storage_url":"https://ops-dre.agcstorage.link"
64+
"storage_url_sg_back":"https://agc-storage-dra.cloud.huawei.asia",
65+
"storage_url_ru_back":"https://agc-storage-drru.cloud.huawei.ru",
66+
"storage_url_ru":"https://agc-storage-drru.cloud.huawei.ru",
67+
"storage_url_de_back":"https://agc-storage-dre.cloud.huawei.eu",
68+
"storage_url_de":"https://ops-dre.agcstorage.link",
69+
"storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn",
70+
"storage_url_sg":"https://ops-dra.agcstorage.link",
71+
"storage_url_cn_back":"https://agc-storage-drcn.cloud.huawei.com.cn",
72+
"storage_url_cn":"https://agc-storage-drcn.platform.dbankcloud.cn"
4773
},
4874
"ml":{
4975
"mlservice_url":"ml-api-dre.ai.dbankcloud.com,ml-api-dre.ai.dbankcloud.cn"
@@ -53,17 +79,17 @@
5379
"configuration_version":"3.0",
5480
"appInfos":[
5581
{
56-
"package_name":"com.onesignal.example",
82+
"package_name":"com.onesignal.sdktest",
5783
"client":{
58-
"app_id":"102009847"
84+
"app_id":"107780279"
5985
},
6086
"app_info":{
61-
"package_name":"com.onesignal.example",
62-
"app_id":"102009847"
87+
"package_name":"com.onesignal.sdktest",
88+
"app_id":"107780279"
6389
},
6490
"oauth_client":{
6591
"client_type":1,
66-
"client_id":"102009847"
92+
"client_id":"107780279"
6793
}
6894
}
6995
]

Examples/OneSignalDemo/app/build.gradle

Lines changed: 36 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1-
apply plugin: 'com.android.application'
1+
plugins {
2+
id 'com.android.application'
3+
}
24

35
android {
4-
compileSdkVersion 31
6+
compileSdkVersion 33
57
defaultConfig {
68
minSdkVersion 19
7-
targetSdkVersion 31
9+
targetSdkVersion 33
810
versionCode 1
911
versionName "1.0"
1012
multiDexEnabled true
@@ -13,12 +15,16 @@ android {
1315
flavorDimensions "default"
1416
}
1517

16-
buildTypes {
17-
release {
18-
minifyEnabled false
19-
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
20-
}
21-
}
18+
// signingConfigs {
19+
// huawei {
20+
// storeFile file('SdkTest.jks')
21+
// keyAlias 'SdkTest'
22+
// keyPassword ''
23+
// storePassword ''
24+
// v1SigningEnabled true
25+
// v2SigningEnabled true
26+
// }
27+
// }
2228

2329
productFlavors {
2430
gms {
@@ -27,8 +33,20 @@ android {
2733
}
2834
huawei {
2935
dimension "default"
30-
minSdkVersion 17
31-
applicationId "com.onesignal.example"
36+
minSdkVersion 19
37+
applicationId "com.onesignal.sdktest"
38+
}
39+
}
40+
41+
buildTypes {
42+
release {
43+
minifyEnabled false
44+
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
45+
}
46+
debug {
47+
// signingConfig null
48+
// productFlavors.huawei.signingConfig signingConfigs.huawei
49+
debuggable true
3250
}
3351
}
3452

@@ -53,24 +71,25 @@ android {
5371
}
5472

5573
dependencies {
56-
implementation 'com.android.support:multidex:1.0.3'
57-
implementation 'com.google.android.material:material:1.4.0'
74+
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion"
75+
implementation 'androidx.multidex:multidex:2.0.1'
5876
implementation 'androidx.cardview:cardview:1.0.0'
59-
implementation 'androidx.appcompat:appcompat:1.4.0'
77+
implementation 'androidx.appcompat:appcompat:1.5.1'
6078
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
6179
implementation 'androidx.vectordrawable:vectordrawable:1.1.0'
6280

63-
implementation 'com.google.android.gms:play-services-location:18.0.0'
81+
implementation 'com.google.android.material:material:1.7.0'
82+
implementation 'com.google.android.gms:play-services-location:21.0.0'
6483

6584
implementation 'com.github.bumptech.glide:glide:4.12.0'
6685

6786
/** START - Google Play Builds **/
68-
gmsImplementation('com.onesignal:OneSignal:4.6.3')
87+
gmsImplementation('com.onesignal:OneSignal:5.1.2')
6988
/** END - Google Play Builds **/
7089

7190
/** START - Huawei Builds **/
7291
// Omit Google / Firebase libraries for Huawei builds.
73-
huaweiImplementation('com.onesignal:OneSignal:4.6.3') {
92+
huaweiImplementation('com.onesignal:OneSignal:5.1.2') {
7493
exclude group: 'com.google.android.gms', module: 'play-services-gcm'
7594
exclude group: 'com.google.android.gms', module: 'play-services-analytics'
7695
exclude group: 'com.google.android.gms', module: 'play-services-location'
Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
package com.onesignal.sdktest.notification;
22

33
import android.os.Bundle;
4+
import android.util.Log;
45

56
import com.huawei.hms.push.HmsMessageService;
67
import com.huawei.hms.push.RemoteMessage;
7-
import com.onesignal.OneSignal;
8-
import com.onesignal.OneSignalHmsEventBridge;
8+
import com.onesignal.notifications.bridges.OneSignalHmsEventBridge;
9+
import com.onesignal.sdktest.constant.Tag;
910

1011
public class HmsMessageServiceAppLevel extends HmsMessageService {
1112

@@ -19,19 +20,19 @@ public class HmsMessageServiceAppLevel extends HmsMessageService {
1920
*/
2021
@Override
2122
public void onNewToken(String token, Bundle bundle) {
22-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HmsMessageServiceAppLevel onNewToken refresh token:" + token + " bundle: " + bundle);
23+
Log.d(Tag.LOG_TAG, "HmsMessageServiceAppLevel onNewToken refresh token:" + token + " bundle: " + bundle);
2324

2425
// Forward event on to OneSignal SDK
25-
OneSignalHmsEventBridge.onNewToken(this, token, bundle);
26+
OneSignalHmsEventBridge.INSTANCE.onNewToken(this, token, bundle);
2627
}
2728

2829
@Deprecated
2930
@Override
3031
public void onNewToken(String token) {
31-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HmsMessageServiceAppLevel onNewToken refresh token:" + token);
32+
Log.d(Tag.LOG_TAG, "HmsMessageServiceAppLevel onNewToken refresh token:" + token);
3233

3334
// Forward event on to OneSignal SDK
34-
OneSignalHmsEventBridge.onNewToken(this, token);
35+
OneSignalHmsEventBridge.INSTANCE.onNewToken(this, token);
3536
}
3637

3738
/**
@@ -44,18 +45,18 @@ public void onNewToken(String token) {
4445
*/
4546
@Override
4647
public void onMessageReceived(RemoteMessage message) {
47-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HMS onMessageReceived: " + message);
48-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HMS onMessageReceived.ttl:" + message.getTtl());
49-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HMS onMessageReceived.data:" + message.getData());
50-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HMS onMessageReceived.title: " + message.getNotification().getTitle());
51-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HMS onMessageReceived.body: " + message.getNotification().getBody());
52-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HMS onMessageReceived.icon: " + message.getNotification().getIcon());
53-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HMS onMessageReceived.color: " + message.getNotification().getColor());
54-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HMS onMessageReceived.channelId: " + message.getNotification().getChannelId());
55-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HMS onMessageReceived.imageURL: " + message.getNotification().getImageUrl());
56-
OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "HMS onMessageReceived.tag: " + message.getNotification().getTag());
48+
Log.d(Tag.LOG_TAG, "HMS onMessageReceived: " + message);
49+
Log.d(Tag.LOG_TAG, "HMS onMessageReceived.ttl:" + message.getTtl());
50+
Log.d(Tag.LOG_TAG, "HMS onMessageReceived.data:" + message.getData());
51+
Log.d(Tag.LOG_TAG, "HMS onMessageReceived.title: " + message.getNotification().getTitle());
52+
Log.d(Tag.LOG_TAG, "HMS onMessageReceived.body: " + message.getNotification().getBody());
53+
Log.d(Tag.LOG_TAG, "HMS onMessageReceived.icon: " + message.getNotification().getIcon());
54+
Log.d(Tag.LOG_TAG, "HMS onMessageReceived.color: " + message.getNotification().getColor());
55+
Log.d(Tag.LOG_TAG, "HMS onMessageReceived.channelId: " + message.getNotification().getChannelId());
56+
Log.d(Tag.LOG_TAG, "HMS onMessageReceived.imageURL: " + message.getNotification().getImageUrl());
57+
Log.d(Tag.LOG_TAG, "HMS onMessageReceived.tag: " + message.getNotification().getTag());
5758

5859
// Forward event on to OneSignal SDK
59-
OneSignalHmsEventBridge.onMessageReceived(this, message);
60+
OneSignalHmsEventBridge.INSTANCE.onMessageReceived(this, message);
6061
}
6162
}

Examples/OneSignalDemo/app/src/main/AndroidManifest.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,17 +46,17 @@
4646
</service>
4747

4848
<service
49-
android:name="com.onesignal.ADMMessageHandlerJob"
49+
android:name="com.onesignal.notifications.services.ADMMessageHandlerJob"
5050
android:permission="android.permission.BIND_JOB_SERVICE"
5151
android:exported="false" />
5252

5353
<!-- This is needed for devices with older ADM versions -->
5454
<service
55-
android:name="com.onesignal.ADMMessageHandler"
55+
android:name="com.onesignal.notifications.services.ADMMessageHandler"
5656
android:exported="false" />
5757

5858
<receiver
59-
android:name="com.onesignal.ADMMessageHandler$Receiver"
59+
android:name="com.onesignal.notifications.receivers.ADMMessageReceiver"
6060
android:permission="com.amazon.device.messaging.permission.SEND"
6161
android:exported="true">
6262

Examples/OneSignalDemo/app/src/main/java/com/onesignal/sdktest/activity/MainActivity.java

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
package com.onesignal.sdktest.activity;
22

3+
import android.os.Build;
34
import android.os.Bundle;
45

6+
import androidx.annotation.RequiresApi;
57
import androidx.appcompat.app.AppCompatActivity;
68

79
import com.onesignal.OneSignal;
810
import com.onesignal.sdktest.R;
911
import com.onesignal.sdktest.model.MainActivityViewModel;
1012

13+
@RequiresApi(api = Build.VERSION_CODES.N)
1114
public class MainActivity extends AppCompatActivity {
1215

1316
private MainActivityViewModel viewModel;
@@ -18,9 +21,10 @@ protected void onCreate(Bundle savedInstanceState) {
1821
setContentView(R.layout.main_activity_layout);
1922

2023
viewModel = new MainActivityViewModel();
21-
OneSignal.addPermissionObserver(viewModel);
22-
OneSignal.addSubscriptionObserver(viewModel);
23-
OneSignal.addEmailSubscriptionObserver(viewModel);
24+
OneSignal.getNotifications().addPermissionObserver(viewModel);
25+
// TODO("STILL SUPPORT?")
26+
// OneSignal.addSubscriptionObserver(viewModel);
27+
// OneSignal.addEmailSubscriptionObserver(viewModel);
2428
viewModel.onActivityCreated(this)
2529
.setupInterfaceElements();
2630
}
@@ -37,8 +41,8 @@ public void onBackPressed() {
3741
protected void onResume() {
3842
super.onResume();
3943

40-
boolean hasConsent = OneSignal.userProvidedPrivacyConsent();
44+
boolean hasConsent = OneSignal.getConsentGiven();
4145
if (hasConsent)
42-
viewModel.setupSettingsLayout();
46+
viewModel.setupLayout();
4347
}
4448
}

Examples/OneSignalDemo/app/src/main/java/com/onesignal/sdktest/adapter/PairRecyclerViewAdapter.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,10 @@ private void populateInterfaceElements(final int position) {
8181

8282
if (Util.isBoolean(value))
8383
value += " (bool)";
84-
else if (Util.isNumeric(value))
85-
value += " (num)";
84+
else if (Util.isInteger(value))
85+
value += " (int)";
86+
else if (Util.isFloat(value))
87+
value += " (float)";
8688
else
8789
value += " (str)";
8890
pairValueTextView.setText(value);

0 commit comments

Comments
 (0)