2016-12-20 11 views
0

同じデベロッパーのアプリがiOSにインストールされているとき、アプリはどのように知っていますか?サブアプリケーションがiosにインストールされたとき、メインアプリはどのように知っていますか?

+0

@Veranhaneyuあなたは私の答えをチェックしていますか?または他の問題に直面していますか? – CodeChanger

+0

実際に問題は、私のアプリにいくつかの広告があります。その広告をクリックすると、アプリストアにリダイレクトされ、インストールされています。 –

+0

私のコードを使って、アプリケーションがインストールされていないかどうかを確認するよりも、 'NO'を返し、それに基づいてiTunesにリダイレクトするか、' YES'で 'openURL'メソッドで開くことができます。 – CodeChanger

答えて

0

あなたはアプリがお使いのデバイスにインストールされていないかをチェックするのに役立ちますopenURL方法により確認することができます。

のObjective-C:

UIApplication *application = [UIApplication sharedApplication]; 

NSLog(@"App installed %d",[application canOpenURL:[NSURL URLWithString:@"AppName://"]]); 

[application openURL:[NSURL URLWithString:@"AppName://Test"] options:@{} completionHandler:^(BOOL success) { 
     NSLog(@"Open result %d",success); 
}]; 

スウィフト:

let appURL = "AppName://extra_param_for_launchscreen" 

let URL = NSURL.init(string: appURL) 

if UIApplication.sharedApplication().canOpenURL(URL) { 
    UIApplication.sharedApplication().openURL(URL) 
} 

canOpenURLによりアプリがインストールかをチェックすることができます。

注:iOSの9.0とおろし金のためにあなたがホワイトリストにアプリ スキーマ名であなたのInfo.plistファイル内のアプリを LSApplicationQueriesSchemesを追加し、インストールアプリの状態やオープンアプリを取得する必要があります。

希望すると、これが役立ちます。

0

以前は、探しているアプリがインストールされているかどうかを確認するためにURLスキームの概念を使用できます(canOpenURLメソッド)。しかし最近、リンゴのプライバシーポリシーのために、リンゴはこの機能を削除して、iOS9からインストールされたかどうかを知ることができませんでした。セキュリティ上の理由により、サブアプリケーションがインストールされているかどうかはわかりません。

以下のリンクはあなたに役に立つかもしれません:

canOpenURL to query url schemes

Privacy and URL Schemes in iOS9

+0

あなたは依然としてURLスキームを照会することができます。info.plistで照会できるスキームを宣言するだけで、キストできるURLスキームの数に制限があります。 – Paulw11

+0

はい、同意します。最初にURLスキームをホワイトリストにする必要があります –

関連する問題