2

Android デバイスと ARC Welder/Mac で正常に動作する Android アプリがあります。ChromeOS で実行しようとするとクラッシュし、「悲しいパズルの顔」が表示されます (プラグインがクラッシュします)。

プラグインがクラッシュしたため、logcat にアクセスできません。アプリが起動するたびに logcat が再初期化されるように見えるため、以前のクラッシュからの出力も表示されません。

/var/log を調べましたが、手がかりは見つかりませんでした。最新の「安定版」ビルドと最新の「dev-channel」ビルドを試しましたが、結果は同じでした。

4

1 に答える 1

3

「シェル」に対して空でないメタデータ リスト設定を定義すると、アプリケーションを起動するために発行される通常のコマンドをオーバーライドできます。何もしない些細なことを設定できます。

"shell": [""]

次に、このメタデータ セットを含む CRX ファイルを読み込んでアプリを起動しようとすると、アプリは起動しますが、スプラッシュ スクリーン (アプリ アイコン) のみが表示されます。

Android セッションは開始されましたが、アプリケーションは実際には起動されていません。

これで、javascript コンソールからいくつかのシェル コマンドを発行できるようになりました。

あなたができると思うのはlogcat -f /sdcard/logfile.txt、ログを永続的な場所に書き込んでからアプリを起動することです:

plugin.shell('logcat -f /sdcard/logfile.txt');
plugin.shell('am start com.package.name/com.package.name.ActivityName')

次に、アプリケーションがクラッシュしたときに、アプリケーションを再起動するだけで、次のシェル コマンドを発行します。

plugin.shell('cat /sdcard/logfile.txt');

これにより、永続化されたログが出力され、うまくいけばエラーへの道が示されます。

于 2015-05-01T01:15:55.980 に答える