パッケージ署名を取得する必要があります。だから私はそれがこのコードを使用して取得:PackageManager.GET_SIGNATURESを使用している場合のAndroid Studioの警告
Signature[] sigs = c.getPackageManager().getPackageInfo(c.getPackageName(),
PackageManager.GET_SIGNATURES).signatures;
しかし、Androidのメーカーは私にこの警告与える:
がgetPackageInfoからアプリの署名を読む:適切に検証されていない場合は、アプリの署名が悪用される可能性がありますが、詳細は問題の説明を参照してください。 less ...(Ctrl + F1) アプリ署名の不適切な検証は、悪意のあるアプリが本物の証明書と偽の証明書の両方を使用してPlayストアに送信し、必要のない機能や情報にアクセスする問題を引き起こす可能性があります別のアプリケーションが偽の証明書をチェックし、残りのものは無視するためです。このメソッドから返されるすべてのシグニチャーを検証するようにしてください。
それは、この場合には署名を検証するためには何を意味するのでしょうか?私は彼らが一致していることを確認するために署名をチェックするつもりです、それは彼らの意味ですか?
ローカルテストでは、すべての出力が単一の負のInteger
であり、コードにはarray
が含まれていません。
私は[問題](http://code.google.com/p/android/issues/detail?id=221143)にこの種の事実について実際のドキュメントを要求しました。私はあなたのアルゴリズムが "署名をチェックする"ために適切である限り、あなたはOKであるべきだと考えます。しかし、私は彼らが警告していることを明確にしていないので、私は確信することはできません。 – CommonsWare
だから、警告が何を意味するのか本当に誰も知りませんか? – Zoe