antiLvl や luckypatch からアプリがクラックされるのを防ぐことは不可能です。たとえば、私は antiLvl をダウンロードして、自分のアプリを数秒でクラックしました。むしろ、LVLが削除されたことを知るコードを実装して、その情報をHTTPサーバーに送信して、そこにクラックされたバージョンがいくつあるかを知ることができるかどうかを知りたい. これは、評価を行うのに役立つ場合があります。ありがとう。
質問する
516 次
2 に答える
2
- 最も明白なメカニズムは、CRC32 などの軽量のハッシュ関数を使用して、アプリケーションのコードのハッシュを構築することです。
PackageManager packagemanager = getPackageManager(); PackageInfo packageinfo = packagemanager.getPackageInfo(String packageName, int flags) int ハッシュ = packageinfo.signatures[0].hashCode()
元のハッシュと比較して、変更されているかどうかを確認します。
2. 私が聞いた別のアプローチは、Google NDK を使用してネイティブ ライブラリ ファイル {.so} を作成し、そこから apk が改ざんされていないかどうかを確認することです。
于 2014-02-10T17:54:16.287 に答える
1
アプリのビルド中に問題が発生したかどうかをテストするために、このコードを使用します。
if(BuildConfig.DEBUG) {
try {
new com.actionbarsherlock.app.SherlockFragment();
} catch(NoClassDefFoundError e) {
Log.e(LOGTAG, "We got ActionBarSherlock problems");
}
try {
new com.google.gson.Gson();
} catch(NoClassDefFoundError e) {
Log.e(LOGTAG, "We got Gson problems");
}
}
これにより、アイデアが得られるはずです。これを生産的に使用したい場合は、外側の if を削除する必要があります。リフレクションを使用してこれを行うこともできます。プロガードがこの無駄なオブジェクトの作成を削除すると確信しています。
于 2013-10-29T14:24:24.377 に答える