2016-06-13 1 views
0

私はある時点でデバイスの位置を要求しようとするフレームワークを開発しました。私が理解しているように、このフレームワークを含むすべてのアプリケーションはNSLocationWhenInUseUsageDescription独自のInfo.plistに追加する必要があります。NSLocationWhenInUseUsageDescriptionをフレームワーク内で定義することは可能ですか?

NSLocationWhenInUseUsageDescriptionがすでにの中にあるのフレームワークなので、私はそれを定義するためにアプリケーションに頼る必要はありませんか?

フレームワークのInfo.plistへの追加は機能しません。実行時にAppのInfo.plistを変更することもできません。

+0

CoreLocationを使用するすべてのフレームワークには、ドキュメントの一部として「NSLocationWhenInUsageDescription」フィールド自体が含まれています。私は他の方法はないと思います。 – ZeMoon

答えて

1

できません。

info.plistは、あなたのAppsバンドルにあります。これは、READ-ONLYです。これにより、実行時に変更することができなくなります。

AppleはアプリがアプリをレビューしているときX権限を要求し、アプリが公開したらYに切り替えるにはしたくないので、これはあまりにも多くの意味になります。 フレームワークをに直接要求することも意味がありません。あなたのコードにサードパーティコードを含める前に、ユーザーの機密性の高いデータに関連するパーミッションをアプリが認識できるようにする必要があるためです。

すべてのiOSフレームワークには、のreadMeファイルまたは関連するドキュメントとフレームワークに必要なアクセス許可が含まれています。

0

私の知る限り不可能です...あなたのフレームワークを使用するには、開発者はNSLocationWhenInUseUsageDescriptionタグを含める必要があることを説明する必要があります。

関連する問題