Apéndices iOS

 

Apéndice 1: Sync Web (HTML) SDK

Desde la versión 3.0.8 puedes obtener el UDID desde una actividad de una WebApp para sincronizarlo con los usuarios trackeados de una app nativa. Lo que hace el SDK es establecer el UDID que el SDK de iOS ha generado como una cookie para todas las peticiones que lanza la WebView.

Debes añadir estos dos métodos:

/**
 *  This method syncs with eMMa Web SDK
 */
+(void)syncWithWebSDK;

/**
 *  This method, sets the domain where the webApp is hosted without the (http://)
 *  Ex: www.example.com
 *
 *  @param url URL without the http://
 */
+(void)setWebSDKDomain:(NSString*) domain;

Antes de que la WebView cargue la WebApp añade:

[eMMa setWebSDKDomain:@"www.miwebappmolona.com"]; // DO NOT ADD HTTP IN THE DOMAIN
[eMMa syncWithWebSDK];

Puedes cargar ahora el contenido de la WebApp:

//EX.
[myWebView loadRequest:myWebAppURLRequest];

 

Apéndice 2: Guía SDK Actualizaciones

Instalación

Las filas de cabecera eMMa.h, eMMaDefines.h y el binario eMMa-Universal-static.a deben ser añadidos al proyecto.

Dynamic Tab

Todos los métodos antiguos han sido removidos del SDK. Para utilizar el DynamicTab con este nuevo lanzamiento es necesario proceder de la siguiente manera:

1. Asignar un tabBarController con el siguiente método (OBLIGATORIO):

+(void) setPromoTabBarController:(UITabBarController*)tabBarController;

2.  Usar también el siguiente método para obtener el DynamicTab

+(void) checkPromoOnTabBar;
La posición, autoCreation y UITabBarItem pueden ser asignados con los siguientes métodos, utilizándolos siempre antes de checkPromoOnTabBar:
+(void) setPromoTabBarIndex:(NSInteger) index;
+(void) setPromoTabBarItem:(UITabBarItem*) tabBarItem;
+(void) setPromoTabBarAutoCreation:(BOOL) autoCreation;

El único cambio en el Strip es en la función de autocreación. Ahora está asignado al siguiente método:

+ (void)setStripAutoCreation:(BOOL) autoCreation;
El método checkForStripWithAutoCreation ha sido removido de esta versión. 

Banner

El único cambio en el Banner es en la función de autocreación. Ahora está asignado al siguiente método: 

+(void) setBannerAutoCreation:(BOOL) autoCreation;
Los siguientes métodos han sido removidos de la última versión del SDK:
+ (void)checkForBannerOnViewController:(UIViewController*)viewController autoCreation:(BOOL)autoCreation label:(NSString*)label;
+ (void)checkForBannerOnViewController:(UIViewController*)viewController autoCreation:(BOOL)autoCreation;

StartView

Todos los métodos antiguos en la StartView han sido removidos en la versión actual del SDK. Estos deben ser reemplazados por los siguientes:

/**Sets the current startView options
Options:   eMMaStartViewManualCall -> Sets the startView in manual mode. Useful for using startviews with labels.
Also disables check for startview returning from background@param options all the options for the startview*/
+(void) setStartViewOptions: (eMMaStartViewOptions) options;
/***  Sets the delegate for the StartView actions.
This will be called when the user interacts with the StartView**  @param delegate delegate*/
+(void) setStartViewDelegate:(id<eMMaStartViewDelegate>) delegate;

Establecer esto permite la opción de detectar cuándo una URL es abierta desde la StartView con el siguiente método:

-(void) openedURLFromStartView:(NSURL*) url;
/**
*  If you want you can pass a NSDictionary of parameters (key-value pair) that will append to the URL as a GET parameters.
This is useful in case that you need to pass some data from the app to a StartView with a landing page.**  
@param parameters NSDictionary of parameters*/
+(void) setStartViewParameters:(NSDictionary*) parameters;
/**Use checkForStartViewWithLabel in order to check if show Promotion web views added on eMMa dashboard.
If you want you can pass a custom NSString that labels the StartView in case you use more than one StartViews on your app and you need to distinguish between them.
NOTE: You cannot use autocreation parameter using label because labeled Startviews are attached to a specific part of the app, not at the startup.
+(void) checkForStartViewWithLabel: (NSString*) label;
/***  Closes the current StartView*/
+(void) closeStartView;

AdBall

Todos los métodos antiguos en la AdBall han sido removidos en la versión actual del SDK. Estos deben ser reemplazados por los siguientes:

/**
Use checkForAdBall in order to check if show AdBalls added on eMMa dashboard.
*/
+(void) checkForAdBall;
/**
AdBall configuration options
eMMaAdBallNotInBackground -> Don't check adball on return of background
@param options bitmask of options
*/
+(void) setAdBallOptions: (eMMaAdBallOptions) options;
/**
Use checkForAdBall in order to check if show AdBalls added on eMMa dashboard.
If you want you can pass a custom NSString that labels the AdBall in case you use more than one AdBalls on your app and you need to distinguish between them.
@param label Label to check the adball
*/
+(void) checkForAdBallWithLabel: (NSString*) label;

Push 

Los siguientes métodos han sido removidos de la última versión del SDK:

+(void)startPushSystem:(NSDictionary*)options withDelegate:(id)delegate;
+(void)startPushSystem:(NSDictionary*)options showAlert:(BOOL)showAlert;
+(void)startPushSystem:(NSDictionary*)options withDelegate:(id)delegate showAlert:(BOOL)showAlert;
+(void)checkReceivedNotifications:(NSDictionary *)options __deprecated;
Deben ser reemplazados por estos: 
/**This method allows to configure the behaviour of the push system.
Currently the supported options are:eMMaPushSystemDisableAlert -> Disables showing alert messages for new pushs received.*/
+(void) setPushSystemOptions: (eMMaPushSystemOptions) options;
/**Configures the delegate for push handling@param delegate The delegate object*/
+(void) setPushSystemDelegate: (id<eMMaPushDelegate>)delegate;
/**This method handles the remote notification payload
Example of implementation:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {[eMMa handlePush:userInfo];}
@param userInfo The userInfo payload*/
+(void) handlePush: (NSDictionary*) userInfo;
/**Checks if eMMa had received any push tag in the current sessioneMMaPushTagBlock definition:
typedef void(^eMMaPushTagBlock)(NSString* pushTag, NSString* pushTagID);
@param pushTag the pattern of the pushtag to be checked
@param block the block to be executed on pushtag received*/
+(void) checkPushTag: (NSString*) pushTag withBlock: (eMMaPushTagBlock) block;

Rate Alert 

Todos los métodos antiguos del Rate Alert han sido removidos en la versión actual del SDK. Estos deben ser reemplazados por los siguientes:

+(void) setRateAlertFreq: (int) hours;
+(void) setRateAlertTitle: (NSString*) title;
+(void) setRateAlertMessage: (NSString*) message;
+(void) setRateAlertCancelButton: (NSString*) cancelButtonText;
+(void) setRateAlertRateItButton: (NSString*) rateItButtonText;
+(void) setRateAlertLaterButton: (NSString*) laterButtonText;
+(void) setRateAlertShowAfterUpdate:(BOOL) showAlert;

Para mostrar el Rate Alert hay que atender a este método:

+(void)addRateAlertForAppStoreURL:(NSString*)appStoreURL;

Order 

Los métodos de startOrder han sido reducidos a estos dos:

+(void)startOrder:(NSString*)orderId customerId:(NSString*)customerId totalPrice:(float)totalPrice coupon:(NSString*)coupon extras:(NSDictionary*)extras;
+(void)startOrder:(NSString*)orderId customerId:(NSString*)customerId totalPrice:(float)totalPrice coupon:(NSString*)coupon;

GetUserId & GetUserInfo 

Los métodos antiguos de GetUserId y GetUserInfo han sido removidos en la versión actual del SDK. Estos deben ser reemplazados por los siguientes:

+(void)getUserInfo:(eMMaGetUserInfoBlock) resultBlock;
+(void)getUserId:(eMMaGetUserIdBlock) resultBlock;
¿Tiene más preguntas? Enviar una solicitud

0 Comentarios

El artículo está cerrado para comentarios.