2016-09-20 13 views
6

を要求するために、アプリのInfo.plistに設定する必要があります。 plistファイルNSHealthShareUsageDescriptionは私が私のiOSアプリにフレームワークが含まれており、私のアプリの情報に次のように置くとき</p> <pre><code>_healthStore requestAuthorizationToShareTypes:writeTypes readTypes:readTypes completion:^(BOOL success, NSError *error) { </code></pre> <p>を使用するフレームワークを持って読んで承認

<key>NSHealthShareUsageDescription</key> 
<string>Read heart rate monitor data.</string> 
<key>NSHealthUpdateUsageDescription</key> 
<string>Share workout data with other apps.</string> 

すべてが正常に動作します - 次のエラーでこれらのキーの結果を含めない:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'NSHealthShareUsageDescription must be set in the app's Info.plist in order to request read authorization.' 

私の問題は、フレームワークのユニットテストを実行すると上記のエラーでクラッシュすることです。フレームワークとテストターゲットのすべてのinfo.plistファイルにキーを入れましたが、クラッシュしました。

テストターゲットを実行するためにどのplistファイルを入れる必要がありますか?

(私はSwift3に切り替える処理中であることを言及する必要があります - これはObjective-Cのプロジェクトの一部です - これはiOS10とXCode 8より前のものです)。

私はこの問題を示すために、適切なユニットテストフレームワークとを作成しました:https://github.com/asensei/HKHealthStoreFrameworkUnitTestBug

答えて

0

あなたは、アプリケーションのInfo.plistファイルにNSHealthShareUsageDescriptionとNSHealthUpdateUsageDescriptionキーを追加する必要があります。あなたはこれを行う:右の画面をクリックすると「のInfo.plist」ファイルの

  1. クリック

  2. と行の追加]を選択します。

  3. スクロールをするために、「個人情報保護 - 健康シェア..」と「プライバシー - 健康の更新..」

  4. は、これらの両方を選択すると、良いことがあります。
関連する問題

 関連する問題