Skip to content

Commit cef7773

Browse files
committed
Android Implementation
• Implements the external ID methods for Android • Updates Android and iOS native SDKs
1 parent 80350cf commit cef7773

File tree

7 files changed

+36
-23
lines changed

7 files changed

+36
-23
lines changed

android/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ android {
3434
}
3535

3636
dependencies {
37-
compile('com.onesignal:OneSignal:3.10.3')
37+
compile('com.onesignal:OneSignal:3.10.5')
3838
}
3939

4040
// Adds required manifestPlaceholders keys to allow mainifest merge gradle step to complete

android/src/main/java/com/onesignal/flutter/OneSignalPlugin.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,10 @@ else if (call.method.contentEquals("OneSignal#promptPermission"))
9292
Log.e("onesignal", "promptPermission() is not applicable in Android.");
9393
else if (call.method.contentEquals("OneSignal#didSetNotificationOpenedHandler"))
9494
this.didSetNotificationOpenedHandler();
95+
else if (call.method.contentEquals("OneSignal#setExternalUserId"))
96+
this.setExternalUserId(call, result);
97+
else if (call.method.contentEquals("OneSignal#removeExternalUserId"))
98+
this.removeExternalUserId(result);
9599
else
96100
result.notImplemented();
97101
}
@@ -250,6 +254,18 @@ private void didSetNotificationOpenedHandler() {
250254
}
251255
}
252256

257+
private void setExternalUserId(MethodCall call, Result result) {
258+
OneSignal.setExternalUserId((String)call.argument("externalUserId"));
259+
260+
result.success(null);
261+
}
262+
263+
private void removeExternalUserId(Result result) {
264+
OneSignal.removeExternalUserId();
265+
266+
result.success(null);
267+
}
268+
253269
@Override
254270
public void onOSSubscriptionChanged(OSSubscriptionStateChanges stateChanges) {
255271
this.channel.invokeMethod("OneSignal#subscriptionChanged", OneSignalSerializer.convertSubscriptionStateChangesToMap(stateChanges));

example/ios/Podfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ target 'Runner' do
5555
end
5656

5757
target 'OneSignalNotificationServiceExtension' do
58-
pod 'OneSignal', '>= 2.9.3', '< 3.0'
58+
pod 'OneSignal', '>= 2.9.4', '< 3.0'
5959
end
6060

6161
post_install do |installer|

example/lib/main.dart

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -142,21 +142,6 @@ class _MyAppState extends State<MyApp> {
142142
});
143143
}
144144

145-
void _handleSetExternalUserId() {
146-
print("Setting external user ID");
147-
OneSignal.shared.setExternalUserId(_externalUserId);
148-
this.setState(() {
149-
_debugLabelString = "Set External User ID";
150-
});
151-
}
152-
153-
void _handleRemoveExternalUserId() {
154-
OneSignal.shared.removeExternalUserId();
155-
this.setState(() {
156-
_debugLabelString = "Removed external user ID";
157-
});
158-
}
159-
160145
void _handleConsent() {
161146
print("Setting consent to true");
162147
OneSignal.shared.consentGranted(true);
@@ -181,6 +166,21 @@ class _MyAppState extends State<MyApp> {
181166
});
182167
}
183168

169+
void _handleSetExternalUserId() {
170+
print("Setting external user ID");
171+
OneSignal.shared.setExternalUserId(_externalUserId);
172+
this.setState(() {
173+
_debugLabelString = "Set External User ID";
174+
});
175+
}
176+
177+
void _handleRemoveExternalUserId() {
178+
OneSignal.shared.removeExternalUserId();
179+
this.setState(() {
180+
_debugLabelString = "Removed external user ID";
181+
});
182+
}
183+
184184
void _handleSendNotification() async {
185185
var status = await OneSignal.shared.getPermissionSubscriptionState();
186186

example/pubspec.yaml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,6 @@ description: Demonstrates how to use the onesignal plugin.
44
dependencies:
55
flutter:
66
sdk: flutter
7-
8-
flutter_test:
9-
sdk: flutter
107
# The following adds the Cupertino Icons font to your application.
118
# Use with the CupertinoIcons class for iOS style icons.
129
cupertino_icons: ^0.1.2

ios/onesignal.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Pod::Spec.new do |s|
1313
s.source_files = 'Classes/**/*'
1414
s.public_header_files = 'Classes/**/*.h'
1515
s.dependency 'Flutter'
16-
s.dependency 'OneSignal', '>= 2.9.3', '< 3.0'
16+
s.dependency 'OneSignal', '>= 2.9.4', '< 3.0'
1717
s.ios.deployment_target = '8.0'
1818
end
1919

pubspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,5 +18,5 @@ dev_dependencies:
1818
sdk: flutter
1919

2020
environment:
21-
sdk: ">=2.1.0-dev.7.1 <3.0.0"
22-
flutter: ">=0.10.1-pre.45 <2.0.0"
21+
sdk: ">=2.0.0-dev.28.0 <3.0.0"
22+
flutter: ">=0.1.4 <2.0.0"

0 commit comments

Comments
 (0)