0
私のアプリケーションのディープリンク作成にBranch.ioを使用しました。しかし、アプリが起動されるたびにディープリンクコントローラにリダイレクトされます。Branch.ioアプリが起動するたびにディープリンクによりディープリンクが開かれています
私は、次のコードを使用している - あなたは、あなたが使用する必要があり、そのdocsによると
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
からinstantiateViewController...
を呼び出すべきではありません。.. (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
Branch *branch = [Branch getInstance];
HomeDetailsViewController *controller = (HomeDetailsViewController*)[[UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]] instantiateViewControllerWithIdentifier:@"HomeDetailsViewControllerID"];
[branch registerDeepLinkController:controller forKey:@"bucketId"];
[branch initSessionWithLaunchOptions:launchOptions automaticallyDisplayDeepLinkController:YES];
// Respond to Universal Links - Branch io
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray *restorableObjects))restorationHandler {
BOOL handledByBranch = [[Branch getInstance] continueUserActivity:userActivity];
return handledByBranch;
}
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary *)options NS_AVAILABLE_IOS(9_0) {
[[Branch getInstance] handleDeepLink:url];
[self application:app
processOpenURLAction:url
sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey]
annotation:options[UIApplicationOpenURLOptionsAnnotationKey]
iosVersion:9];
return YES;
}
-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
[[Branch getInstance] handleDeepLink:url];
[self application:application
processOpenURLAction:url
sourceApplication:sourceApplication
annotation:annotation
iosVersion:8];
return YES;
}
私もこのコードを実装しましたが、リンクがクリックされていない場合でも、このパラメータは 'clicked_branch_link'のパラメータにyesを返していました。私はそれが好みのどこかで価値を保存すると思う。しかし、テスト飛行でテストしたところ、うまくいきました。 –
Alex from Branch.io:広範囲にテストしていた場合、そのデバイスIDに対して複数のリンククリックがキューに入れられていて、SDKがそれらを順番に消去する必要があった可能性があります。引き続き問題がある場合は、教えてください! –
私は同じ問題を抱えていますが、どうすればクリーンアップできますか? @AlexBauer – ovidiur