開発者のポリシーに従って、SMSおよびCALL_LOG関連のアクセス許可は、アプリに関連するコア機能がない限り、使用しないことをお勧めしました。以前はREAD_SMSアクセス許可を使用してOTPを自動検出していましたが、後でアプリケーションから削除し、SMS Retriever APIに置き換えました。2019年1月3日にPlayストアへの禁止された許可なしにアプリケーションを公開しました。 2019年1月9日より前にこれらの権限。今すぐアプリをPlayストアの新しいリリースで更新しようとすると、1つのエラーを修正する必要があるアプリリリースエラーが表示されます。エラーの詳細を確認するためにクリックすると、メッセージは「You can機密権限を宣言する新しいアプリリリースを作成するまで、このアプリを編集してください。」
現在、私のアプリで使用されている権限のリストは次のとおりです。
<uses-permission Android:name="Android.permission.INTERNET" />
<uses-permission Android:name="Android.permission.GET_ACCOUNTS" />
<uses-permission Android:name="Android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission Android:name="Android.permission.CAMERA" />
<uses-permission Android:name="Android.permission.ACCESS_NETWORK_STATE" /> <uses-permission Android:name="Android.permission.ACCESS_WIFI_STATE" />
<uses-permission Android:name="Android.permission.READ_EXTERNAL_STORAGE"/> <uses-permission Android:name="Android.permission.VIBRATE" />
<uses-permission Android:name="Android.permission.SYSTEM_ALERT_WINDOW" /> <uses-permission Android:name="Android.permission.READ_CONTACTS" />
<uses-permission Android:name="Android.permission.RECEIVE_BOOT_COMPLETED"/> <uses-permission Android:name="Android.permission.ACCESS_FINE_LOCATION" /> <uses-permission Android:name="Android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission Android:name="Android.permission.RECORD_AUDIO" />
SMSまたはCALL_LOGの権限を使用していませんが、新しいリリースの公開中にエラーが発生します。エラーを表示するには、リンクを参照してください。
新しいリリースの公開中のアプリエラー
アプリ公開ダッシュボードの「リリース管理」の下にある「アーティファクトライブラリ」セクションを確認しました。
私はすべての「アクティブアーティファクト」を注意深く調べ、Open Track(Beta)でリリースされた1つのライブアーティファクトを見つけました。ずっと前にベータリリースであったこのアクティブなアーティファクトには、警告の原因であるREAD_SMS権限がありました。
したがって、これに取り組むために、SMSまたはCALL_LOG権限なしでアプリを公開し、ベータ版でトラックをテストしました。
ベータ版から製品版にリリースし、アプリを製品版に公開することができました。
トラック全体で機密性の高い権限を持つアクティブなAPKがないことを確認してください。念のため、以下の手順に従ってください。
新しい準拠APKをリリースするには、次の手順に従ってください:
Play Consoleに移動します。
アプリを選択します。
左側のメニューで、[リリース管理]> [アプリのリリース]を選択します。非準拠のAPKがアクティブステータスになっているリリーストラックの横にある[管理]を選択します。
プロダクショントラックに非準拠のAPKがある場合は、プロダクショントラックの最後のリリースを作成することを強くお勧めします。
推奨される注文(トラックに非準拠のAPKがある場合):内部トラック>クローズ>オープン>プロダクション
新しいリリースを作成するには、[リリースの作成](または[リリースの編集])を選択します。
新しい準拠APKをアップロードするか、「ライブラリから追加」
アプリのリリース中にアクセス許可申告フォームが表示された場合は、次の手順に従ってフォームに入力してください。
1つのコア機能(デフォルトSMSハンドラーなど)を選択して、準拠するAPKでリリースを作成します。このリリースは自動的に拒否につながる可能性がありますが、これにより、トラック内の非準拠のAPKが非アクティブになります。
ページの下部にある[保存]> [レビュー]を選択します。
[ロールアウトの開始]をクリックします。
新しいリリースが100%公開され、準拠していないAPKが完全に非アクティブ化されていることを確認してください。
手順1に戻って、トラック全体で機密性の高い権限を持つアクティブなAPKがなくなるまで、非準拠のAPKがアクティブステータスであるトラックで別のリリースを作成します。トラック全体で対応するAPKを使用してアプリを更新した場合は、機密の権限を持つアクティブなAPKが残っていないか確認してください。 Play Console内で確認する方法は次のとおりです。
[リリース管理]> [アーティファクトライブラリ]に移動します
アクティブなAPKとドラフトAPKを展開する
各APKに必要な権限を展開します
すべての権限を削除しても、Googleがアプリを拒否しているかどうかを確認する必要があると2つ考えています。 1.いくつかのライブラリからのアクセス許可がある可能性があるマージマニフェストを確認します。のようにそれを削除します
<uses-permission
Android:name="Android.permission.READ_SMS"
tools:node="remove" />
2. PlayStoreコンソールのアルファまたはベータリリースからテストビルドを更新します。
約1日後、この奇妙なエラーを取り除くために次の手順を完了しました。
最初に、マニフェストファイルから権限を削除したことを確認した後、一部のライブラリが同じ権限を使用していないことを相互確認し、ライブラリからも権限を削除し、これをマニフェストファイルに追加します。
<uses-permission
Android:name="Android.permission.RECEIVE_SMS"
tools:node="remove"/>
<uses-permission
Android:name="Android.permission.READ_SMS"
tools:node="remove"/>
<uses-permission
Android:name="Android.permission.READ_CALL_LOG"
tools:node="remove"/>
<uses-permission
Android:name="Android.permission.WRITE_CALL_LOG"
tools:node="remove"/>
2番目に重要なポイント(実際の問題は私の場合はここにあります)、所有していないPlayストアのすべてのトラック(プロダクション、ベータ、アルファ、内部テスト)と、これらの権限を使用していた古いapkをチェックします。ケースでは、すべてのトラックに新しいAPKをアップロードする必要があります:生産トラック:生産、オープントラック:ベータ、クローズドトラック:アルファ、内部テストトラック:内部テスト
ふew!
このリリースにバンドルされている古いAPKを無効にする必要がある場合があります。
これらの権限があり、ターゲットSDKのバージョンが古いAPKを置き換える場合、Google Playは新しいリリースでそれらをデフォルトでアクティブ化したままにするため、最新のAPKで機密性の高いアクセス許可ポリシーが必要になる場合がありますこの許可を持っている。
@ラキ
このドキュメントを一読することをお勧めします。他の機密性の高い権限を削除するのを忘れた可能性があります。 https://play.google.com/about/privacy-security-deception/permissions/
したがって、この権限リストを確認し、不要なものを見つけた場合はコードで確認してください。
まず、以前のAPKが持っている機密性の高い権限を持つAPKをリリースする必要があります。 APKがアップロードされると、アクセス許可宣言フォームがポップアップし、アプリがコンプライアンスに準拠しているか、機密のアクセス許可を使用しないかを選択できます。 「いいえ、このリリースはSMSおよび通話ログ)を満たしていません。チェックして、「リリースのロールアウト」ボタンが強調表示されるように、それをクリックしてください。ロールアウトして確認すると、機密の権限なしで新しいアップデートをリリースできるようになります。
******ただし、アプリが機密性の高い権限を必要とする場合は、「はい、私のアプリは準拠しています」を確認し、それらからの承認を待つ必要があります。*****
これは私が見つけた回避策であり、うまくいきました。開発者サポートは、この問題に関する貴重な情報を提供できませんでした。