4

これは私にとって非常に興味深いことです。私は主に実行時アクセス許可について知っており、実行時アクセス許可が提案された理由をよく知っていますか? どのように使用できますか?しかし、この実行時の許可の問題が原因で発生する問題に関するこの質問では、この問題を解決するためのかなり新しい方法を提案した男がいます。

同じ質問に対するU.swapの回答を参照してください。ここにその回答があります。

この男は、ユーザーがアクセス許可を一度だけ承認する必要があり、残りの人生ですべてのランタイムアクセス許可を心配する必要がなく、コメントで説明されているように、アプリケーションがマシュマロバージョンとプレマシュマロバージョンで実行されるという、素晴らしく実用的なソリューションを提案しました私とCommonswareの間で議論されたすべてのコメント。

@NiteshPareek: この回答について、Android 6.0 以降のデバイスでのアプリの実行を妨げるものは何もありません -Commonsware

しかし、これは、ランタイム許可によって提案されたセキュリティを購入できることを意味しますか? @CommonsWare – タパンパルマー

@Tapanparmar: いいえ、ユーザーは [設定] で権限を手動で取り消すことができるためです。targetSdkVersion が 22 以下であるということは、アプリに実行時のパーミッション コードがないことを意味するため、ユーザーはインストール時に要求されたパーミッションに同意する必要があります。これが、Android が最初から機能していた方法です。– コモンズウェア

許可を表示せずにアプリがマシュマロで実行されますか? @CommonsWare - タパン・パーマー

@Tapanparmar: アプリのインストール時にユーザーに権限が表示されます。– コモンズウェア

わかりましたので、これによって提供されるおかしなアクセス許可をスキップできますが、それを行うことで何か欠点はありますか? @コモンズウェア

@Tapanparmar: ユーザーは、事前にすべての権限を付与することを好まない場合、アプリをインストールしないことを選択できます。また、より高い targetSdkVersion 値に基づいて必要なその他の動作が失われる可能性があります。さらに懸念がある場合は、別のスタック オーバーフローの質問をしてください。– コモンズウェア

だから私は知りたいこれを行うことの実際の欠点はありますか? そして、 RunTimePermissionsの主な目的であったセキュリティはどうなりますか。そして、これを行うことが本当に望ましいのでしょうか?

ここの回答に関するコメントを参照するか、下の画像を参照してください

ディスカッション コメント

4

1 に答える 1

4

これを行うことの実際の欠点はありますか?

ユーザーは、事前にすべての権限を付与することを好まない場合、アプリをインストールしないことを選択できます。targetSdkVersionまた、より高い値に基づいて必要なその他の動作が失われる可能性があります。

そして、RunTimePermissions の主な目的であったセキュリティはどうなるのか

何もない。それでもすべての<uses-permission>要素が必要であり、ユーザーは許可を与えることに同意する必要があります。ただし、その同意は、アプリの実行時ではなく、主にインストール時に行われます。Android 6.0 以降のデバイスのユーザーはdangerous、設定アプリを介して - レベルのアクセス許可を取り消すことができることに注意してください。

そして、これを行うことが本当に望ましいのでしょうか?

私見、いいえ。最終的に、何かがあなたの手を強制し、あなたの をアップグレードする必要がありますtargetSdkVersion。また、既に述べたように、ユーザーはあなたのアプリをインストールせずに、インストール時に多くの権限を要求しない他のアプリを使用することを好む場合があります。23 未満を使用するtargetSdkVersionことは、もはやメンテナンスされていないアプリや経験の浅い開発者にとっては良い答えです。

于 2016-07-16T13:49:31.777 に答える