android - 勝手にオン - USBデバッグ中に画面をロックしないようにするにはどうすればよいですか?



usbデバッグ 勝手にオン (10)

Android OS2.2では、設定/アプリケーション/開発のオプションを使用して、USBデバッグ中に画面ロックを無効にしていました。 私の三星ギャラクシーSをOS2.3.3にアップグレードした後、このオプションは消えてしまい、デバッグ中に私の電話機のロックを解除し続けるのは非常にイライラです。

このオプションは移動しましたか、それを行う別の方法がありますか? (私は有用なオプションが何の理由もなく取り除かれた時に嫌いです!)

前もって感謝します...


Answer #1

2つの選択肢が私の心に浮かびます:

  1. 画面のタイムアウトを非常に高くするアプリを書いてください。 SCREEN_OFF_TIMEOUTまたはSTAY_ON_WHILE_PLUGGED_IN使用します。

  2. あなたの携帯電話が根っこで、あなたが開発しているコンピュータと同じネットワーク内の無線LANに接続されている場合、あなたはスクリーンタイムアウトのオプションも付属しているこの素晴らしいアプリを楽しむことができます: wifi adb


Answer #2

あなたのマニフェストでこれを使う:

<uses-permission android:name="android.permission.WAKE_LOCK" />

あなたの画面は消えません!


Answer #3

コンソールで

 while true; do adb shell input keyevent mouse ; sleep 1 ; done

Answer #4

シンプル。 あなたのアクティビティに次のコードを追加するだけで、デバッグ時に画面がオンになります:

@Override
protected void onResume()
{
    Log.d( tag, "onResume()" );
    try
    {
        super.onResume();
        if( BuildConfig.DEBUG && Debug.isDebuggerConnected() )
        {
            Log.d("SCREEN", "Keeping screen on for debugging, detach debugger and force an onResume to turn it off.");
            getWindow().addFlags( WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
                                  WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
                                  WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON |
                                  WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON |
                                  WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON );
        }
        else
        {
            getWindow().clearFlags( WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
                                    WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
                                    WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON |
                                    WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON |
                                    WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON );
            Log.d( "SCREEN", "Keeping screen on for debugging is now deactivated.");
        }

    }
    catch( Throwable t )
    {
        Log.e( tag, "onResume() - Exception: " + t.getMessage(), t );
    }
}

Answer #5

ホルヘ・セヴァロスは正しいです。

Android 4以上の場合:

  1. 設定>携帯電話について
  2. 「ビルド番号」を数回(約10回)タッチします。
  3. その後、Sttingsメニューに戻り、 "Developer options"
  4. 「開発者オプション」には、「目を覚ます」オプションが表示されます。

楽しむ。


Answer #6

ロック解除コードで12345を置き換えます。 次に、このシェルスクリプトはあなたの電話をロック解除します:

adb shell input keyevent KEYCODE_WAKEUP # activate 
adb shell input touchscreen swipe 530 1420 530 1120 # swipe up
adb shell input text 12345 # input password
adb shell input keyevent 66 # press enter

上記のように、電話機のセキュリティ機能を無効にしないでください。 誰もそのスクリプトファイルを読むことができないようにしてください。


Answer #7

私はAndroid 2.3.3を搭載した2台のデバイスを持っていて、どちらも設定/アプリケーション/開発とその滞在覚醒(スクリーンは充電中にスリープ状態にならない)でこのオプションを持っています。 そしてそれらの1つはサムスンギャラクシーSです。

また、Android 2.2(HTC Desire)搭載のデバイスもあり、同じ場所に同じ機能があります。

それはあなたがカスタムROMを使用していない奇妙ですか?


Answer #8

私はsampe問題を抱えていた。 私は電話が接続されているときに画面をロックを解除したままにするこのアプリを見つけました。

StayAwake


Answer #9

私はアンドロイドのバージョン2.3.6を持っており、 settings - > applications - > development中に充電するためにプラグインされている間、目を覚ます(つまり画面がスリープしない)オプションがあります。


Answer #10

複数のオプションがあり、その多くは嫌な (主観的な)副作用があります。 私が見つけたものと、私が考えることができる副作用を列挙します。

私は怠け者で、他の多くの人たちと同じように、私は不必要なものを目の当たりにしているのを好まない。 これは、「ああ、私が仕事をしている間にこれをオンにしてから、終了したらオフにする」オプションが実行可能なオプションではないことを意味します。 あなたそれ忘れ、 最終的に以下列挙された副作用のいずれかを体験します。

TL; DR

FLAG_KEEP_SCREEN_ON Debug.isDebuggerConnected()ガード付きFTW! Debug.isDebuggerConnected() あなたがデバッグしたいだけなら、充電中目を覚まさずスクリーンタイムアウト目覚ましロックは実行不可能なオプションです。
このソリューションは、API 1とWi-Fiのデバッグの利点もあります。

設定>デベロッパーオプション>充電中は起床しない

燃え上がる :これを踏みにじっている巨大な赤旗があるはずです。 デバッグ中ではなく "充電中"と表示されます。 つまり、電話が電源に接続されていても、それは維持されます。 あなたがAMOLED画面(例えばGalaxy Sシリーズ)を持っていたら、これは特に悪いことです。私はこのオプションを数週間続けていましたが、今は恒久的なポートレートステータスバーを持っています...

通知 :低輝度を使用していても、電話をかけるたびに画面をオフにすることを忘れないでも、簡単な通知があれば画面が表示され、プラグインされている間ほとんどの時間に。

セキュリティ :充電中に画面を放置していて、仕事中に何かのためにすばやく必要な場合は、最初に「ああ、私の電話を最初にロックさせてください」ではなく、誤って残した場合は汚れた秘密を公開することができますそれで。 あなたがあなたのcollegauesを信頼できない環境で働いているなら、私はその雇用を再考することに注意しましょう。

設定>表示>スクリーンタイムアウト

あなたに通知するアプリがたくさんある場合、これは非常に危険です。 特にスパマー(Facebook、Family Guy、またはGmailをたくさん持っている場合でもGMail)がある場合は特にそうです。

バーンイン :リスクも高いです。 今では、「ワイヤー上にいる」ことに制限されていないので、明示的にオフにすることを忘れたり、通知を受け取ったりするのを忘れるたびに、そのままになります。

バッテリーの消耗 :あなたが1つを取得する場合は、画面が指定された時間の間、あなたのバッテリーを排水します。 時々あなたはそれをオフにすることを忘れたり、単に通知を得ることを忘れるので、それはオンになります。

ホットポケット :電話があなたのポケットに入っている間に通知を受け取ると、画面と閉じたスペースからの照明があなたのポケットを加熱し、あなたも燃えてしまうことがあります。

ポケットダイヤル :携帯電話がポケットに入っている間に画面がオンになると、毎秒ポケットダイヤルが増加するリスクがあります。 今日、これはあまり起こりにくいですが、電話アプリは通常隠されていますが、私のポケットは日付を頻繁に変更したり、メールを読むのが好きです。

セキュリティ :あなたが公共の場所にいるとあなたの携帯電話がテーブルの上にいると想像してください、誰かに話すか、または急な休憩を取るために十分に長い間、あなたの友人はあなたのロックされていない画面を乱用する可能性が高いでしょう。 特に彼らが息を吹き込むならば。 明らかにタイムアウトが短いと、このリスクが減少します。

ウェイクロックを使用する

許可 :アプリケーションに不必要なandroid.permission.WAKE_LOCK権限を追加する必要があります(幸いなことに、Gradle PluginのManifest Mergerのおかげで、デバッグのバリエーションだけを追加するのは簡単です)。

コーディング :あなた自身もロックを解除することを管理する必要があり、おそらくこのためにサービスを作成する必要があります。 ここではまだAndroidでこの機能を使用していないことにご注意ください。

役に立たない :それはまた、CPUを目覚めさせるだけなので、スクリーンをオンに保つのに本当に役立たない。 documentation参照してください。

デバッガが接続されているFLAG_KEEP_SCREEN_ON

このdocumentationを読んだら、あなたの問題に非常に近いと思います。

コーディング :私がここで考えることができるのは、いくつかのコードを変更する必要があるということだけですが、他のすべてのアクティビティが拡張するBaseActivityを持っていると仮定すると、非常に簡単です。

@Override protected void onResume() {
    super.onResume();
    if (BuildConfig.DEBUG) { // don't even consider it otherwise
        if (Debug.isDebuggerConnected()) {
            Log.d("SCREEN", "Keeping screen on for debugging, detach debugger and force an onResume to turn it off.");
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
        } else {
            getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
            Log.d("SCREEN", "Keeping screen on for debugging is now deactivated.");
        }
    }
}

それを使用するには、デバッガを接続し、アプリケーション(ホーム/タスクボタンまたはスクリーンをオフにする)を残してから、オンに戻ってonResumeを起動するonResumeです。

あなたが通常デバッグしているものによっては、 onCreate上記を入れておけば、以前に登録して、 onResume前にアクティビティライフサイクルをデバッグしている間に画面を起き続けることができます。

一般的に私は、コードを試してみるときにDebug代わりにRunを使うことを勧めます。何かを見つけたときだけデバッガをアタッチしてください。これはあなたのアプリを10倍速くし、このオプションが最高です。





android