Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion iOS_SDK/OneSignalDevApp/OneSignalDevApp/AppDelegate.m
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,8 @@ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(
settings:@{kOSSettingsKeyAutoPrompt: @false,
kOSSettingsKeyInAppLaunchURL: @true}];

[OneSignal promptLocation];
// [OneSignal setLocationShared:false];

[OneSignal sendTag:@"someKey1122" value:@"03222017"];

[OneSignal addPermissionObserver:self];
Expand Down
161 changes: 107 additions & 54 deletions iOS_SDK/OneSignalDevApp/OneSignalDevApp/Base.lproj/Main.storyboard

Large diffs are not rendered by default.

37 changes: 20 additions & 17 deletions iOS_SDK/OneSignalDevApp/OneSignalDevApp/ViewController.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,23 +33,26 @@

@interface ViewController : UIViewController <OSInAppMessageDelegate>

@property (weak, nonatomic) IBOutlet UITextField *appIdTextField;
@property (weak, nonatomic) IBOutlet UIActivityIndicatorView *activityIndicatorView;
@property (weak, nonatomic) IBOutlet UISegmentedControl *consentSegmentedControl;
@property (weak, nonatomic) IBOutlet UISegmentedControl *subscriptionSegmentedControl;
@property (weak, nonatomic) IBOutlet UISegmentedControl *inAppMessagingSegmentedControl;
@property (weak, nonatomic) IBOutlet UITextField *addTriggerKey;
@property (weak, nonatomic) IBOutlet UITextField *addTriggerValue;
@property (weak, nonatomic) IBOutlet UIButton *addTriggerButton;
@property (weak, nonatomic) IBOutlet UITextField *removeTriggerKey;
@property (weak, nonatomic) IBOutlet UITextField *getTriggerKey;
@property (weak, nonatomic) IBOutlet UILabel *infoLabel;
@property (weak, nonatomic) IBOutlet UITextField *externalIdTextField;
@property (weak, nonatomic) IBOutlet UITextField *outcomeName;
@property (weak, nonatomic) IBOutlet UITextField *outcomeValueName;
@property (weak, nonatomic) IBOutlet UITextField *outcomeValue;
@property (weak, nonatomic) IBOutlet UITextField *outcomeUniqueName;
@property (weak, nonatomic) IBOutlet UITextView *result;
@property (weak, nonatomic) IBOutlet UITextField *appIdTextField;
@property (weak, nonatomic) IBOutlet UIActivityIndicatorView *activityIndicatorView;
@property (weak, nonatomic) IBOutlet UISegmentedControl *consentSegmentedControl;
@property (weak, nonatomic) IBOutlet UISegmentedControl *subscriptionSegmentedControl;
@property (weak, nonatomic) IBOutlet UISegmentedControl *locationSharedSegementedControl;
@property (weak, nonatomic) IBOutlet UISegmentedControl *inAppMessagingSegmentedControl;
@property (weak, nonatomic) IBOutlet UIButton *promptPushButton;
@property (weak, nonatomic) IBOutlet UIButton *promptLocationButton;
@property (weak, nonatomic) IBOutlet UITextField *addTriggerKey;
@property (weak, nonatomic) IBOutlet UITextField *addTriggerValue;
@property (weak, nonatomic) IBOutlet UIButton *addTriggerButton;
@property (weak, nonatomic) IBOutlet UITextField *removeTriggerKey;
@property (weak, nonatomic) IBOutlet UITextField *getTriggerKey;
@property (weak, nonatomic) IBOutlet UILabel *infoLabel;
@property (weak, nonatomic) IBOutlet UITextField *externalIdTextField;
@property (weak, nonatomic) IBOutlet UITextField *outcomeName;
@property (weak, nonatomic) IBOutlet UITextField *outcomeValueName;
@property (weak, nonatomic) IBOutlet UITextField *outcomeValue;
@property (weak, nonatomic) IBOutlet UITextField *outcomeUniqueName;
@property (weak, nonatomic) IBOutlet UITextView *result;

@end

26 changes: 19 additions & 7 deletions iOS_SDK/OneSignalDevApp/OneSignalDevApp/ViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,8 @@ - (void)viewDidLoad {

self.subscriptionSegmentedControl.selectedSegmentIndex = (NSInteger) OneSignal.getPermissionSubscriptionState.subscriptionStatus.subscribed;

self.locationSharedSegementedControl.selectedSegmentIndex = (NSInteger) OneSignal.isLocationShared;

self.inAppMessagingSegmentedControl.selectedSegmentIndex = (NSInteger) ![OneSignal isInAppMessagingPaused];

self.appIdTextField.text = [AppDelegate getOneSignalAppId];
Expand Down Expand Up @@ -83,13 +85,6 @@ - (IBAction)getTriggersAction:(id)sender {
}

- (IBAction)sendTagButton:(id)sender {
// [self promptForNotificationsWithNativeiOS10Code];
// [OneSignal registerForPushNotifications];

[OneSignal promptForPushNotificationsWithUserResponse:^(BOOL accepted) {
NSLog(@"NEW SDK 2.5.0 METHDO: promptForPushNotificationsWithUserResponse: %d", accepted);
}];

[OneSignal sendTag:@"key1"
value:@"value1"
onSuccess:^(NSDictionary *result) {
Expand All @@ -106,6 +101,18 @@ - (IBAction)sendTagButton:(id)sender {
}];
}

- (IBAction)promptPushAction:(UIButton *)sender {
// [self promptForNotificationsWithNativeiOS10Code];
// [OneSignal registerForPushNotifications];
[OneSignal promptForPushNotificationsWithUserResponse:^(BOOL accepted) {
NSLog(@"OneSignal Demo App promptForPushNotificationsWithUserResponse: %d", accepted);
}];
}

- (IBAction)promptLocationAction:(UIButton *)sender {
[OneSignal promptLocation];
}

- (IBAction)setEmailButtonPressed:(UIButton *)sender {
[AppDelegate setOneSignalAppId:self.appIdTextField.text];
}
Expand Down Expand Up @@ -135,6 +142,11 @@ - (IBAction)subscriptionSegmentedControlValueChanged:(UISegmentedControl *)sende
[OneSignal setSubscription:(bool) sender.selectedSegmentIndex];
}

- (IBAction)locationSharedSegmentedControlValueChanged:(UISegmentedControl *)sender {
NSLog(@"View controller location sharing status: %i", (int) sender.selectedSegmentIndex);
[OneSignal setLocationShared:(bool) sender.selectedSegmentIndex];
}

- (IBAction)inAppMessagingSegmentedControlValueChanged:(UISegmentedControl *)sender {
NSLog(@"View controller in app messaging paused: %i", (int) !sender.selectedSegmentIndex);
[OneSignal pauseInAppMessages:(bool) !sender.selectedSegmentIndex];
Expand Down
18 changes: 13 additions & 5 deletions iOS_SDK/OneSignalSDK/Source/OneSignal.m
Original file line number Diff line number Diff line change
Expand Up @@ -1381,11 +1381,16 @@ + (void)setSubscription:(BOOL)enable {


+ (void)setLocationShared:(BOOL)enable {
mShareLocation = enable;
mShareLocation = enable;
[OneSignal onesignal_Log:ONE_S_LL_VERBOSE message:[NSString stringWithFormat:@"setLocationShared called with status: %d", (int) enable]];

if (!enable) {
[OneSignal onesignal_Log:ONE_S_LL_VERBOSE message:@"setLocationShared set false, clearing last location!"];
[OneSignalLocation clearLastLocation];
}
}

+ (void) promptLocation {

// return if the user has not granted privacy permissions
if ([self shouldLogMissingPrivacyConsentErrorWithMethodName:@"promptLocation"])
return;
Expand All @@ -1397,7 +1402,6 @@ + (BOOL)isLocationShared {
return mShareLocation;
}


+ (void)handleDidFailRegisterForRemoteNotification:(NSError*)err {
waitingForApnsResponse = false;

Expand Down Expand Up @@ -1649,12 +1653,16 @@ + (void)registerUserInternal {


if (mShareLocation && [OneSignalLocation lastLocation]) {
[OneSignal onesignal_Log:ONE_S_LL_VERBOSE message:@"Attaching device location to 'on_session' request payload"];
dataDic[@"lat"] = [NSNumber numberWithDouble:[OneSignalLocation lastLocation]->cords.latitude];
dataDic[@"long"] = [NSNumber numberWithDouble:[OneSignalLocation lastLocation]->cords.longitude];
dataDic[@"loc_acc_vert"] = [NSNumber numberWithDouble:[OneSignalLocation lastLocation]->verticalAccuracy];
dataDic[@"loc_acc"] = [NSNumber numberWithDouble:[OneSignalLocation lastLocation]->horizontalAccuracy];
[OneSignalLocation clearLastLocation];
}
} else
[OneSignal onesignal_Log:ONE_S_LL_VERBOSE message:@"Not sending location with 'on_session' request payload, setLocationShared is false or lastLocation is null"];

// Clear last location after attaching data to payload or not
[OneSignalLocation clearLastLocation];

let pushDataDic = (NSMutableDictionary *)[dataDic mutableCopy];
pushDataDic[@"identifier"] = self.currentSubscriptionState.pushToken;
Expand Down
3 changes: 1 addition & 2 deletions iOS_SDK/OneSignalSDK/Source/OneSignalLocation.m
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ + (void)clearLastLocation {
}
}

+ (void) getLocation:(bool)prompt {
+ (void)getLocation:(bool)prompt {
if (hasDelayed)
[OneSignalLocation internalGetLocation:prompt];
else {
Expand Down Expand Up @@ -217,7 +217,6 @@ + (void)internalGetLocation:(bool)prompt {
#pragma mark CLLocationManagerDelegate

- (void)locationManager:(id)manager didUpdateLocations:(NSArray *)locations {

// return if the user has not granted privacy permissions or location shared is false
if ([OneSignal requiresUserPrivacyConsent] || ![OneSignal isLocationShared])
return;
Expand Down