web-dev-qa-db-ja.com

壁の充電器が差し込まれたときの自動起動

私はAndroid 3つのことを必要とするアプリケーションを開発しています:-

  1. アプリを特定の時間実行し続けると、電話はオフになります(Working Fine)
  2. 電話がコンセントから充電されると、電源ボタンを押さずに電話の電源を自動的にオンにします。(壁のソケットでは動作しませんが、ラップトップ経由でUSBケーブルに接続すると動作します)。
  3. 起動後、アプリは自動的に動作を開始するはずです(Working Fine)

あなたが知っている必要があります:-私の携帯電話はモトE(根ざし)であり、第二段階が行われることを望んでいます。いくつかのコードを試してみましたが、それはmoto Eでは動作しません。USBで接続すると応答として2が得られ、ウォールソケット充電器で接続すると1と表示されます

どんな助けも感謝します

追伸:-ラップトップには接続されているが、ソケット充電器には接続されていないUSBケーブルで自動起動

pdate-1:1-見つかったfastboot oem off-mode-charge 0 Nexus 7で動作しますが、Moto eでは動作しません。

2-ルーターに接続するとMoto eが起動(USBドングルポート)

18
Rohit

ようやく解決策を得ました。system/bin/charge_only_modeファイル。あなた自身の責任でそれをしてください、そして削除する前にそのファイルのバックアップを持ってください。壁の充電器に接続したときに起動し、現在は正常に動作するという望ましい結果が得られました。ではごきげんよう!

10
Rohit

Moto e4およびPixel 2 XL:

デバイスをブートローダー(fastboot)に入れて、Android Toolsを使用してUSBで接続されたコンピューターから次のコマンドを実行します。

fastboot oem off-mode-charge 0

2

私のデバイスLenovo K7000-Plusでは、変更が必要なファイルはkpoc_chargerにある/system/binです。

iPodファイルは、Android 6.0 ROMを使用している携帯電話では機能しませんが、kpoc_chargerは完全に機能します。

よろしく

ハディ

1
Hadi

Lenovo A2010電話の場合、次のように機能しました。

  1. Total root(rooted phone)などのプレイストアのファイルマネージャー電話アプリを使用して、フォルダー/ system/bin /に移動します
  2. ファイルkpoc_chargerをコピーし、そこにkpoc_charger.bakとして貼り付けます
  3. Total-commanderを使用して元のファイルkpoc_chargerを編集し、すべての行を次のコードに置き換えます。

    #!/system/bin/sh
    /system/bin/reboot
    
  4. それを保存し、プロパティに移動して、UID:0ルート、GID:2000シェルおよびパーミッションを755として変更します(/ system/binフォルダー内の他のファイルのプロパティと同じ)。
  5. 電話をシャットダウンし、充電器に接続します。
  6. バジンガ!!!!バッテリーアイコンは一瞬表示されますが、電話は正常にOSに起動します。
1
Abhishek Verma

また、charge_only_modeを電話を再起動するshスクリプトに置き換えてみましたが、M(Motorola Bionic)で赤い丸のみが表示されました。スクリプトを次のように変更すると動作します...今、Mで赤い丸が数秒間表示され、次に空白の画面、Mで別の赤い丸が表示され、起動します。

#!/system/bin/sh
su -c "/system/bin/reboot -n outofcharge"
1
Frank N Stein

init.rcファイルを更新することで動作するようになりました

on chargerトリガーを見つけ、その下に次の行を追加しました。

setprop ro.bootmode "normal"
setprop sys.powerctl "reboot"

トリガーブロック全体は、このようになります

on charger
    class_start charger
    setprop ro.bootmode "normal"
    setprop sys.powerctl "reboot"

次に、更新後に作成されたブートイメージを再パックしてフラッシュする必要があります。

デバイスをUSBで接続する

デバイスの電源を入れて、ブートローダーモードにします

adb reboot bootloader 

ブートイメージをフラッシュするには、fastbootで次のコマンドを実行します

fastboot flash boot new-boot.img

注:この修正により、電源ボタンまたはソフトウェアのシャットダウンを使用して電源を切った場合でも、プラグを差し込むとデバイスが再起動します。

ソース: https://forum.xda-developers.com/showthread.php?p=77766638#post77766638

ここに私のプロジェクトのこれらの変更を含むコミットを見ることができます:

https://github.com/darran-kelinske-fivestars/mkbootimg_tools/commit/c8633a2ec2e1924272fd16a8ed7fa7414bb65544#diff-d0007d763b44198f7c22e2c19609d5bbR606

0
dazza5000

別の方法を見つけました(DavidThompson256のおかげ http://forum.xda-developers.com/showthread.php?t=1187631

まず、電話がルート化されていることを確認し(iRootがこれに非常に適していることがわかりました)、次に電話にRootExplorer.apk(または同様の)をインストールします。

「/ system/bin/playlpm」を編集し、その内容を次のコマンドに置き換えてみてください(最初にバックアップを作成することを忘れないでください)。

#!/system/bin/sh
/system/bin/reboot

(コンテンツがバイナリであることがわかっているので、単にそれらを削除し、これらの2行を書き込んでファイルを保存します)

注:そのファイルを変更すると、そのアクセス許可に変更は適用されませんが、別のファイルを作成する場合は、アクセス許可を正確に設定することを忘れないでください。

最後に、ご自身の責任で行ってください。それは私のために働いた。 (サムスンディスカバリーS730M)

0
Amir Dashti

電話がコンセントから充電されると、電源ボタンを押すことなく、電話の電源が自動的にオンになります。 (壁のソケットでは動作しませんが、ラップトップ経由でUSBケーブルに接続すると動作します)。

これを実現するには、携帯電話のOSファイルを変更する必要があります。基本的に、/system/bin/chargemonにはブートスクリプト/バイナリがあり、これは何もしないスクリプトに置き換えることができます。 デバイスが永久に損傷する可能性があるため、自己責任で行ってください。また、メーカー保証は無効になります。

0
S.D.