2016-03-12 6 views
10

私は、ホストアプリケーションと共有拡張の両方のアプリケーショングループを設定しました。識別子は "group.com.abc.xyzApp"のようになります。プログラムでこの文字列を取得する方法はありますか? また、アプリグループがプログラムによって設定されているかどうかを検出するにはどうすればよいですか?ファイルコンテナを初期化しようとしていますか、またはユーザーがデフォルトで知っているほどのアプリグループ識別子を持っていますか? 例:iOSでホストアプリケーションと共有拡張からアプリグループIDを取得する方法はありますか?

[[NSUserDefaults alloc] initWithSuiteName:@"group.com.abc.xyzApp"].

+0

こんにちは@Shwethascar、あなたは解決策を見つけましたか? –

+0

@ W.Sいいえ私はしませんでした。私は識別子のプリセット文字列を使用して終了しました。 – Shwethascar

+0

NSString * path = [[NSBundle mainBundle] pathForResource:@ "MyApplicationTargetName" のタイプ:@ "資格"]; NSDictionary * dict = [[NSDictionary alloc] initWithContentsOfFile:path]; NSArray * appGroups = [dict objectForKey:@ "com.apple.security.application-groups"]; 上記のコードを使用してグループアレイを読み取ることができました。ウォッチキットエクステンションとアプリケーションの両方がハードコードされた文字列なしでプログラマチックにアプリケーショングループを読み込むように、エンタイトルメントファイル名をプログラマチックに見つけることを試みています。 –

答えて

0

あなたがプログラム的に何かを得る場合は、検出することはできませんが、私は、これは非常に便利ではないと思います。

なぜこれを変更する必要がありますか?環境によっては? その場合は、プロジェクト変数でそれを行うと、その後

enter image description here

enter image description here

後にあなたがそれを得ることができ、あなたのInfo.plistにこれを追加することができます。

main.object(forInfoDictionaryKey: "AppGroupId") as? String 

・ホープ、このヘルプ

関連する問題