問題の説明 私は追跡アプリに取り組んでおり、ユーザーが追跡サービスを開始するときに「常に」位置情報の許可を有効にしたいと考えています。ここでは、ユーザーが移動したパスを構築しているので、アプリがバックグラウンドであっても緯度と経度を検出したいと考えています。ユーザーが場所のオプションを「アプリの使用中」として選択すると問題が発生します。この場合、アプリがバックグラウンドにあり、問題が発生しているときに、ユーザーの正確な緯度と経度を取得できません。この場合、ユーザーの適切なトラックを構築できません。
これを行うために、私は追加しました
"NSLocationAlwaysUsageDescription"
しかし、それはエラーを生成します::
このアプリは、使用方法の説明なしでプライバシーに配慮したデータにアクセスしようとしました。アプリの Info.plist には、NSLocationAlwaysAndWhenInUseUsageDescription キーと NSLocationWhenInUseUsageDescription キーの両方が含まれている必要があります。文字列値は、アプリがこのデータをどのように使用するかをユーザーに説明します。
これを解決するには、すべての権限を追加する必要があります。これは私の場合は正常に機能します。しかし、現在、ユーザーは位置情報を有効にするときに、「アプリの使用中に許可する」、「常に許可する」、「許可しない」という 3 つのオプションを取得しています。ここで問題が発生します。
要件 ユーザーが「常に」位置情報オプションのみを有効にするように制限したいのですが、現在位置情報リクエストのポップアップに 3 つのオプションが表示されています。ユーザーが選択したオプションを検出する方法はありますか? ユーザーが常に以外のオプションを選択する場合、追跡システムで作業するときに「常に」を選択するように指示します。
1.基本的に、ユーザーの選択された場所オプションを検出したいのですが、それが「常に」でない場合は、「常に」場所オプションを選択するように再度要求します。これは可能ですか?
2.リクエストサービスポップアップ内に「常に」オプションを追加したいのですが、現在、「アプリの使用中に許可する」、「1回だけ許可する」、「許可しない」という3つの値を取得しています。次の形式で権限を追加しました::
<key>NSLocationUsageDescription</key>
<key>NSLocationAlwaysUsageDescription</key>
<key>NSLocationWhenInUseUsageDescription</key>
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
しかし、3 つの値しか表示されていません。このスクリーンショットを確認してください::