Giter VIP home page Giter VIP logo

braze-ios-sdk's People

Contributors

hokstuff avatar jerielng avatar lowip avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

braze-ios-sdk's Issues

setLastKnownLocationWithLatitude does not work

Using setLastKnownLocationWithLatitude(latitude: latitude, longitude: longitude, horizontalAccuracy: horizontalAccuracy, altitude: altitude, verticalAccuracy: verticalAccuracy) to manually set the last known location for the user does not work.
The following error is returned:
The given parameters: latitude xx.xxxxxx([-90, 90]), longitude 0.000000([-180, 180]), horizontalAccuracy 13196.881470([0,∞)), altitude 0.000000, verticalAccuracy 0.000000([0,∞)), are not in the valid range, ignoring this location.
It seems the latitude and longitude are mixed and longitude is always converted to zero.
Using setLastKnownLocationWithLatitude(latitude: latitude, longitude: longitude, horizontalAccuracy: horizontalAccuracy) works fine though.

SDK version 4.4.3

Warning - "treating #import as an import of module 'Foundation'"

Hi, we are seeing lots of warnings of

treating #import as an import of module 'Foundation'"

Please see below.

SDK integrated via SPM
Appboy_iOS_SDK: https://github.com/braze-inc/braze-ios-sdk @ 4.4.1

 ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/Appboy.h:11:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:44]: ▸ #import <Foundation/Foundation.h>
[14:49:44]: ▸ ^
[14:49:44]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/Appboy.h:12:1: treating #import as an import of module 'UIKit' [-Wauto-import]
[14:49:44]: ▸ #import <UIKit/UIKit.h>
[14:49:44]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/Appboy.h:13:1: treating #import as an import of module 'UserNotifications' [-Wauto-import]
[14:49:45]: ▸ #import <UserNotifications/UserNotifications.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKUser.h:5:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKFacebookUser.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKTwitterUser.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKAttributionData.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKCard.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKFeedController.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKContentCard.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKSdkAuthenticationError.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKSdkAuthenticationDelegate.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessage.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessage.h:2:1: treating #import as an import of module 'UIKit' [-Wauto-import]
[14:49:45]: ▸ #import <UIKit/UIKit.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessage.h:61:67: implicit conversion increases floating-point precision: 'float' to 'CGFloat' (aka 'double') [-Wdouble-promotion]
[14:49:45]: ▸ static CGFloat const RedValueOfDefaultIconColorAndButtonBgColor = 0.0f;
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessage.h:62:76: implicit conversion increases floating-point precision: 'float' to 'CGFloat' (aka 'double') [-Wdouble-promotion]
[14:49:45]: ▸ static CGFloat const GreenValueOfDefaultIconColorAndButtonBgColor = 115.0f / 255.0f;
[14:49:45]: ▸                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   ^~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessage.h:63:75: implicit conversion increases floating-point precision: 'float' to 'CGFloat' (aka 'double') [-Wdouble-promotion]
[14:49:45]: ▸ static CGFloat const BlueValueOfDefaultIconColorAndButtonBgColor = 213.0f / 255.0f;
[14:49:45]: ▸                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   ~~~~~~~^~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessage.h:64:69: implicit conversion increases floating-point precision: 'float' to 'CGFloat' (aka 'double') [-Wdouble-promotion]
[14:49:45]: ▸ static CGFloat const AlphaValueOfDefaultIconColorAndButtonBgColor = 1.0f;
[14:49:45]: ▸                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   ~~~~~~~^~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessageHTML.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   ^~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessageHTMLBase.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessageHTMLFull.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessageControllerDelegate.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessageController.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessageUIControlling.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:45]: ▸ #import <Foundation/Foundation.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:45]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessageWebViewBridge.h:1:1: treating #import as an import of module 'WebKit' [-Wauto-import]
[14:49:45]: ▸ #imp
ort <WebKit/WebKit.h>
[14:49:45]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessageDarkTheme.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:46]: ▸ #import <Foundation/Foundation.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessageDarkTheme.h:2:1: treating #import as an import of module 'UIKit' [-Wauto-import]
[14:49:46]: ▸ #import <UIKit/UIKit.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessageDarkButtonTheme.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:46]: ▸ #import <Foundation/Foundation.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKInAppMessageDarkButtonTheme.h:2:1: treating #import as an import of module 'UIKit' [-Wauto-import]
[14:49:46]: ▸ #import <UIKit/UIKit.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKContentCardsController.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:46]: ▸ #import <Foundation/Foundation.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKIDFADelegate.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:46]: ▸ #import <Foundation/Foundation.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKSDWebImageProxy.h:1:1: treating #import as an import of module 'UIKit' [-Wauto-import]
[14:49:46]: ▸ #import <UIKit/UIKit.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKImageDelegate.h:1:1: treating #import as an import of module 'UIKit' [-Wauto-import]
[14:49:46]: ▸ #import <UIKit/UIKit.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKLocationManager.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:46]: ▸ #import <Foundation/Foundation.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKLocationManager.h:2:1: treating #import as an import of module 'CoreLocation' [-Wauto-import]
[14:49:46]: ▸ #import <CoreLocation/CoreLocation.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKLocationManagerProvider.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:46]: ▸ #import <Foundation/Foundation.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKURLDelegate.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:46]: ▸ #import <Foundation/Foundation.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKPushUtils.h:2:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:46]: ▸ #import <Foundation/Foundation.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKPushUtils.h:3:1: treating #import as an import of module 'UserNotifications' [-Wauto-import]
[14:49:46]: ▸ #import <UserNotifications/UserNotifications.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKPushUtils.h:4:1: treating #import as an import of module 'UIKit' [-Wauto-import]
[14:49:46]: ▸ #import <UIKit/UIKit.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKModalWebViewController.h:1:1: treating #import as an import of module 'UIKit' [-Wauto-import]
[14:49:46]: ▸ #import <UIKit/UIKit.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKModalWebViewController.h:2:1: treating #import as an import of module 'WebKit' [-Wauto-import]
[14:49:46]: ▸ #import <WebKit/WebKit.h>
[14:49:46]: ▸ ^~~~~~~~~~~~~~~~~~~~~~~
[14:49:46]: ▸ ⚠️  **************************/checkouts/braze-ios-sdk/AppboyKit/include/ABKNoConnectionLocalization.h:1:1: treating #import as an import of module 'Foundation' [-Wauto-import]
[14:49:46]: ▸ #import <Foundation/Foundation.h>

braze-is-sdk could not be resolved on SPM

I'm attempting to integrate the braze iOS SDK through Swift Package Manager and it is unable to resolve the dependency, with the error "artifact not found for target 'AppboyPushStoryFramework'

Screen Shot 2021-11-18 at 5 57 43 PM

I've tried

  • master (Artifact not found for target 'AppboyPushStoryFramework')
  • 4.4.0 (Artifact not found for target 'AppboyPushStoryFramework')
  • 4.3.4 (Artifact not found for target 'AppboyKitLibrary')
  • 4.3.3 (Artifact not found for target 'AppboyPushStoryFramework')
  • 4.3.2 (Artifact not found for target 'AppboyPushStoryFramework')
  • 4.3.1 (Artifact not found for target 'AppboyKitLibrary')
  • 4.3.0 (Artifact not found for target 'AppboyPushStoryFramework')
  • 4.2.0 (Artifact not found for target 'AppboyPushStoryFramework')

I don't really want to go lower than that due to some of the breaking changes in 4.2.0 but I tried a couple and having same issue.

Device:
MacBook Pro (13-inch, M1, 2020)

OS:
Big Sur v 11.6

Issue with SPM and Bitrise

Hi,

That's something started to appear when we switch from the Cocoapods integration to the SPM. During the build process, only when Braze package is added in our Package.swift this dialog appears, blocking our current CI (Bitrise) execution. Is this something you're aware of?

Screenshot 2022-11-08 at 11 50 02

Swift package not compiling

Hello
I recently move your SDK from pods to SPM, and I cant compile , get the following error
"artifact of binary target 'AppboyKitLibrary' failed download. the request timed out"
attached image

please advice
Thanks

Screen Shot 2021-08-18 at 12 26 44

In-app message (Full Screen, Modal) not displayed using Braze SDK 4.4.2 with SPM

Since we migrated our dependency manager from Carthage to Swift Package Manager, the Braze modal & full screens are not displayed anymore.

We use the version 4.4.2 of the SDK.
We tried with both SDKs v4.4.2. from https://github.com/braze-inc/braze-ios-sdk & https://github.com/Appboy/appboy-ios-sdk

Push notifications are well delivered.

While testing a draft campaign of "in-app message" (modal, full screen or slide-up) using a test user uuid or email, the push with title "Tap to see Test in-app message" is well received. But clicking on it doesn't make the message appear on the screen.

Note: The issue also happen after launching the campaign.

is it safe to defer braze initialization until app launch process finish?

Hi Braze Team

I try to decrease my app launch time by defer braze setup,
i create a array of closure that hold all method that is called during launch time, such as init app boy, track event etc

is it safe to defer braze initialization until app launch process finish by using this approach

@import TVLFoundation;
@import Appboy_iOS_SDK;

...

typedef void (^BrazeCompletionBlock)(void);

@interface ThirdPartyBrazeIntegrationWrapper: ThirdPartyBrazeIntegration
@property (strong, nonatomic) NSMutableArray<BrazeCompletionBlock> *eventQueue;
@property (assign, nonatomic) BOOL *hasInitiated;
@end

@implementation ThirdPartyBrazeIntegrationWrapper

- (instancetype)initwithConfigType: (ThirdPartyTrackingConfig)configType {
    self.eventQueue = [[NSMutableArray alloc] init];
    self.hasInitiated = NO;

    [self enqueue:^{
        [super init];
    }];

    [self setupQueueExecutor];

    return self;
}

- (void)applicationDidLaunch:(NSDictionary *)launchOptions {
    [self enqueue:^{
        [super applicationDidLaunch:launchOptions];

        self.hasInitiated = YES;
    }];
}

- (void)setUserID:(NSString *)userID {
    [self enqueue:^{
        [super setUserID:userID];
    }];
}

- (void)identity:(ThirdPartyTrackPayload *)payload {
    [self enqueue:^{
        [super identity:payload];
    }];
}

- (void)track:(ThirdPartyTrackPayload *)payload {
    [self enqueue:^{
        [super track:payload];
    }];
}

- (void)registeredForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
    [self enqueue:^{
        [super registeredForRemoteNotificationsWithDeviceToken:deviceToken];
    }];
}

#pragma mark - Private Methods

/// After app launch is finish
/// Call all method called during app launch based on the queue
- (void)setupQueueExecutor {
    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 3 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
        static dispatch_once_t onceToken;
        dispatch_once(&onceToken, ^{
            if (!self.hasInitiated) {
                for (BrazeCompletionBlock command in self.eventQueue) {
                    command();
                }
            }

            self.eventQueue = nil;
        });
    });
}

/// Enqueue block that called during launch time
/// The queue block will be executed after app launch process finish
/// @param block bloc of code that called during app launch
- (void)enqueue:(BrazeCompletionBlock)block {
    if (self.hasInitiated) {
        block();
    } else {
        [self.eventQueue addObject:block];
    }
}

@end

cc: @hokstuff @lowip

[Bug] IAM messages with buttons aren't shown on iPhones

Platform
iOS

Platform Version
iOS 16.7

Braze SDK Version
7.4.0

Xcode Version
15.1.0

Integration Method
Swift Package Manager

Computer Processor
M1

Repro Rate
100%

Steps To Reproduce
Create a campaign on Braze dashboard with the following message:
Type: Full-screen
Layout: Image & Text
Enforced Device Orientation: Portrait
Add Image
Add Header text
Add Body text
Add 2 buttons with redirect to Web URL
Check Open Web URL Inside the App
Message Close: Wait for User to Dismiss

Expected Behavior
The view appears over the current app screen

Actual Incorrect Behavior
The view DOES NOT appear over the current app screen

Verbose Logs

023-12-20 18:33:56.260470-0300 XXXXXXXXXX[12898:2328509] [braze] [http] response 201 [sdk.iad-05.braze.com/api/v3/data](http://sdk.iad-05.braze.com/api/v3/data)
- Headers:
 - Accept-Ranges: bytes
 - Access-Control-Allow-Origin: *
 - Cache-Control: max-age=0, private, must-revalidate
 - Content-Encoding: gzip
 - Content-Type: application/json
 - Date: Wed, 20 Dec 2023 21:33:55 GMT
 - Etag: W/"6cfcc10ccd722cf2e7154f0f377a27bf"
 - Strict-Transport-Security: max-age=31536000; includeSubDomains
 - Vary: Origin,Accept-Encoding
 - Via: 1.1 varnish
 - x-cache: MISS
 - x-cache-hits: 0
 - x-request-id: d7afa4cd-76da-4727-90a4-69baab8e7921
 - x-runtime: 0.160439
 - x-served-by: cache-gru-sbsp2090072-GRU
- Body:
{
 "config" : {
  "attributes_blacklist" : [
   "account_balance_current_membership_level_name",
   "current_sign_in_at",
   "sms_subscription"
  ],
  "content_cards" : {
   "enabled" : 1
  },
  "events_blacklist" : [
   "iap_trigger"
  ],
  "geofences" : {
   "enabled" : 0,

   "min_time_since_last_report" : 0,
   "min_time_since_last_request" : 86400,
   "should_request_authorization" : 0
  },
  "messaging_session_timeout" : 21600,
  "purchases_blacklist" : [

  ],
  "test_user" : {
   "device_logging_enabled" : 0
  },
  "time" : 1700610252
 },
 "feed" : [

 ],
 "triggers" : [
  {
   "data" : {
    "bg_color" : 4294243575,
    "btns" : [
     {
      "bg_color" : 4279990479,
      "border_color" : 4279990479,
      "click_action" : "URI",
      "id" : 0,
      "text" : "WEBLINK",
      "text_color" : 4294967295,
      "uri" : "https://www.cnn.com",
      "use_webview" : 1
     }
    ],
    "click_action" : "URI",
    "close_btn_color" : 4291085508,
    "frame_color" : 3207803699,
    "header" : "TESTING Deeplinking",
    "header_text_color" : 4280624421,
    "image_style" : "TOP",
    "image_url" : "https://braze-images.com/appboy/communication/marketing/slide_up/slide_up_message_parameters/images/65835b5f6fa172004deedc95/4d767b9edd3926e5b04f75d68466c30cdad7d86f/original.png?1703107427",
    "message" : "Another test",
    "message_close" : "SWIPE",
    "orientation" : "PORTRAIT",
    "text_align_header" : "CENTER",
    "text_align_message" : "CENTER",
    "text_color" : 4280624421,
    "trigger_id" : "VERYLARGEBASE64STRING==",
    "type" : "FULL"
   },
   "delay" : 0,
   "end_time" : null,
   "id" : "HEXID",
   "only_ipads" : 1,
   "only_iphones" : 1,
   "priority" : 2000004000,
   "re_eligibility" : 60,
   "start_time" : 1703085300,
   "trigger_condition" : [
    {
     "app_ids" : [
      "HEXAPPID"
     ],
     "type" : "open"
    }
   ],
   "type" : "inapp"
  }
 ]
}

Additional Information
Notes:

It is working ok on Android.
IAMs without buttons works ok.
Push notifications are well delivered.
App uses Storyboard and UIKit API.

The following libraries are added to the main target:

  • BrazeUI
  • BrazeLocation
  • BrazeKit

Compiler error when integrating library with SPM and Xcode 13 beta 3

Report

What did you do?

Integrating AppboyKit and AppboyUI with Swift Package Manager and Xcode 13 beta 3 (13A5192i).

What did you expect to happen?

Library compiles without errors.

What happened instead?

Compiler emits error

  • 'shared' is unavailable in application extensions for iOS: Use view controller based solutions where appropriate instead.
  • 'openURL:' is unavailable: not available on iOS (App Extension)

This error appears due to the changes in the linker mentioned in the Xcode release notes

Resolved in Xcode 13 Beta 3

Linking Swift packages from application extension targets or watchOS applications no longer emits unresolvable warnings about linking to libraries not safe for use in application extensions. This means that code referencing APIs annotated as unavailable for use in app extensions must now themselves be annotated as unavailable for use in application extensions, in order to allow that code to be used in both apps and app extensions. (66928265)

All libraries that use API marked as unavailable in iOS app extensions, such as UIApplication.shared, have to mark their code themself with @available(iOSApplicationExtension, unavailable) in Swift and NS_EXTENSION_UNAVAILABLE in Objective-C.

Environment

Xcode Version: 13 beta 3 (13A5192i)
Appboy SDK Version: 4.0.2
Deployment Target: iOS 11.4
Base SDK: 15.0
Method of Integration: Swift Package Manager

Library not found for -lAppboyKitLibrary

After updating to the latest version (3.34.0), and also after cleaning the project and derived data, if I do another build (the first time you build it works) it throws the following error, preventing the project to build.

image

Any clue on what's going on here?

braze-ios-sdk In-App-Message does not open deeplinks without path or asset attached

The title says most of it. But we were trying to open a deep link from and In-App-Message and it was not working, after debuting the SDK we manage to find that this line, when both the path and assets are nil it will return YES making the app open the URL in the web view, even for deep link URLs.

We manage to work around it by adding an empty zip file to the assets field or adding a path to the deep link, but would be great to have it looked after in the SDK.

`CGFloat` warnings in `ABKInAppMessage.h`

Several warnings in ABKInAppMessage.h when SDK is integrated via SPM

Affected versions: 4.3.0 and below

Implicit conversion increases floating-point precision: 'float' to 'CGFloat' (aka 'double')

warnings

NSInvalidArgumentException when calling start(withApiKey:inApplication:withLaunchOptions:)

We have recently launched a new version of our app and have seen a dramatic decline in user actions in Braze.
After some debugging, we noticed this message in the console:

2021-06-10 20:02:01.888471-0700  [APPBOY] Exception NSInvalidArgumentException caught in Braze method initWithApiKey:withAppboyOptions:: +[ABKPersistentData configureForDataVersioning]: unrecognized selector sent to class 0x11451d470

This exception is raised right after calling:

//AppDelegate
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil) -> Bool {
  //...
  Appboy.start(withApiKey: "XXXX-XXXX-XXX-XXX-XXXX"), in: application, withLaunchOptions: launchOptions)

Before that last release we imported Appboy SDK using Cocoapods. For this new release of our app we switched to SPM.
Notice that we used to import from Appboy repo with

pod 'Appboy-iOS-SDK/Core'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.