http://forum.xda-developers.com/showthread.php?t=1843837、特に投稿 #8を参照してください。
引用:
フリーズを止めるために「Fast Force Close」アプリが何をしているのか、ようやくわかりました。かなり単純なことを行います。基本的には、/data/log フォルダーを脇に移動し、シンボリック リンクに置き換えることで、そのフォルダーを「非表示」にします。また、これにより、再起動後にWifiが接続されなくなります(理由はわかりません)
mv /data/log /data/log_backup
ln -s /dev/null /data/log
修正を「無効」にするには、逆のことを行います。
とにかく、これは解決策がそのフォルダーで起こっていることに何らかの形で関連していると私に考えさせました。そして、強制終了時にそのフォルダーで起こっていることの 1 つは、dumpstate コマンドの出力を受け取ることです。
dumpstate -k -t -n -z -d -o /data/log/dumpstate_app_error
したがって、「ダイアログを強制的に閉じるのではなくフリーズする」問題に対する私の解決策は、いくつかのファイルを /data/log フォルダーに配置することです。
これで問題は解決しましたが、副作用があるかどうかはわかりません。
これを実装したい場合は、さまざまな方法で実行できます (たとえば、ターミナル エミュレーターやおそらくルート ファイル エクスプローラーを使用することもできます)。これを行うためのフラッシュ可能なジッパーを取り付けています。(XDAリンクを参照)
いくつかのボイラープレート コードとは別に、重要な部分は次のとおりです (zip の updater-script 内):
ui_print("Apply fix...");
delete("/data/log/dumpstate_app_error");
delete("/data/log/dumpstate_app_error.txt.gz");
delete("/data/log/dumpstate_app_error.txt.gz.tmp");
package_extract_file("placeholder", "/data/log/dumpstate_app_error");
package_extract_file("placeholder", "/data/log/dumpstate_app_error.txt.gz");
package_extract_file("placeholder", "/data/log/dumpstate_app_error.txt.gz.tmp");
set_perm(0, 0, 0400, "/data/log/dumpstate_app_error");
set_perm(0, 0, 0400, "/data/log/dumpstate_app_error.txt.gz");
set_perm(0, 0, 0400, "/data/log/dumpstate_app_error.txt.gz.tmp");