web-dev-qa-db-ja.com

Android Phonegapアプリのリモートデバッグが機能しない

こんにちはChromeすべての 手順 を実行しましたが、私の電話はadb devicesコマンドで認識されます。

次に、chrome:// inspect /#devicesに移動すると、電話が表示されますが、次のメッセージがブラウザに表示されます。

オフライン

0019C9AD7EF31F

認証を保留中:デバイスのデバッグセッションを受け入れてください。

問題は私の電話にそのようなメッセージがないことです、私はKitKatを備えたSansumg Galaxy S2を持っています。それが問題だと思ったのでバージョンを4.1から4.4に更新しましたが、4.4にアップグレードした後、同じ問題が発生しました。

誰かが以前にこの問題に直面したことがありますか?

16

問題は、リモートデバッグがChromeブラウザーでのみ機能し、phonegapのようなアプリ内のWebviewでは機能しなかったことです。ただし、Android 4.4 (KitKat)およびPhonegap 3.3、これは現在サポートされています。

私はそれについてここにブログ投稿を書きました:

http://adamwadeharris.com/remote-debugging-in-phonegap-with-chrome-devtools/

基本的に、アプリのメインJavaファイルでwebviewデバッグを有効にし、アプリがAPIバージョン19(KitKat)をターゲットにしていることを確認する必要があります。KitKatを備えたデバイスがない場合は、代わりにエミュレータを使用してください。

Webviewデバッグを有効にする方法は次のとおりです。

Platform/Android/src/com/yourAppName/YourAppName.Javaで、他のインポート文の下に次の行を追加します

import Android.os.Build;
import Android.webkit.WebView;

そして、onCreateメソッド内に以下を追加します。

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KitKat) {
  WebView.setWebContentsDebuggingEnabled(true);
}
17
aharris88

すでにいくつかのコメントで述べられているように、これはコルドバ3.3以降とAndroid 4.4以降)からそのまま使用できます。AndroidManifest.xmlで何も設定する必要はありません。

cordova buildまたはcordova runを使用する場合、デフォルトのビルドモードは「デバッグ」になります。これは、次のような生成されたapkファイル名でも確認できます。

{app_name} -debug-unaligned.apk

この場合は、Chrome)とChrome menu > Tools > Inspect Devicesを選択するだけです(もちろん、アプリをデバイスにデプロイし、USBデバッグをオンにした後)。

追加情報については、こちらもご覧ください: https://developer.chrome.com/devtools/docs/remote-debugging

認証の問題について...最初にcordova Android runを実行すると、アプリがスマートフォンにデプロイされます。認証ダイアログを確認し、チェックマークを付けて選択を記憶する必要があります。この後、chromeインスペクターでデプロイされたアプリを検査することをお勧めします。

4
bjunix

電話のバグのようです。私は次のようにして修正しました:

  1. 開発者向けオプションを選択
  2. 承認されたUSBデバッグを取り消す
  3. uSBデバッグスイッチのオン/オフ
  4. pCに接続する
  5. ここで、2つの権限ダイアログを受け入れるだけで、AndroidStudioとChromeで正常に動作します。
4
Miao1007

これは一部の人に役立つかもしれない別の解決策です

ずっと前にPhonegap Buildで証明書の署名を設定していたため、アプリの「リリース」バージョンが自動的に生成されていました。ずいぶん前に、この細かいことを忘れていました。

アプリのデバッグバージョンを取得するには、Phonegap BuildページのAndroidのドロップダウンでNo key selectedを具体的に選択する必要があります。次に、それが生成するapkをダウンロードすると、appname-release.apkではなくappname-debug.apkが作成されます。

2
Emperorlou

「保留中の認証」が点滅し続ける場合は、すべてのChrome更新をデバイスから削除し、Chrome v.33にダウングレードしてください。何かが1つに壊れているようです。最新のChromeビルド(Chrome v.44で問題が発生したため)です。関連する問題へのリンクは次のとおりです: https://code.google.com/p/chromium/issues/detail?id=512150

2
Baidaly

Phonegap Buildを使用している場合は、config.xmlに以下を追加して、Chrome開発コンソールでWebビューを検査できるようにします。

まず、ウィジェットタグにxmlns:Android = "http://schemas.Android.com/apk/res/Android"が含まれていることを確認します

<widget 
    xmlns="http://www.w3.org/ns/widgets" 
    xmlns:gap="http://phonegap.com/ns/1.0" 
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    id="me.app.id" 
    version="1.0.0">

次に、以下を追加します

<gap:config-file platform="Android" parent="/manifest">
     <application Android:debuggable="true" />
</gap:config-file>

Nexus 5、Phonegap 3.7.0で動作します。

<preference name="phonegap-version" value="3.7.0" />

ソース: https://www.genuitec.com/products/gapdebug/learning-center/configuration/

2
brunettdan