私はアンドロイドが新しくなっています。私はサービス付きのアプリを作りたいです。サービスは現在の充電状態を継続的にチェックする必要があります(差し込まれているかどうか)。充電器が接続されているときにイベントを実行したい(Wi-Fiをオフにする)。私の問題を解決してもらえますか?あなたは以下の例を見つけることができ、バッテリの状態についてアンドロイドの現在の充電状態を検出する方法
0
A
答えて
0
:
をあなたはオンデマンドでバッテリーの状態をチェックすることができます。
IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
Intent batteryStatus = context.registerReceiver(null, ifilter);
int status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
boolean isCharging = status == BatteryManager.BATTERY_STATUS_CHARGING ||
status == BatteryManager.BATTERY_STATUS_FULL;
int chargePlug = batteryStatus.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
boolean usbCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_USB;
boolean acCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_AC;`
またはBroadcastReceiverを使用して:
<receiver android:name=".PowerConnectionReceiver">
<intent-filter>
<action android:name="android.intent.action.ACTION_POWER_CONNECTED"/>
<action android:name="android.intent.action.ACTION_POWER_DISCONNECTED"/>
</intent-filter>
</receiver>
コード:
public class PowerConnectionReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
int status = intent.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
boolean isCharging = status == BatteryManager.BATTERY_STATUS_CHARGING ||
status == BatteryManager.BATTERY_STATUS_FULL;
int chargePlug = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
boolean usbCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_USB;
boolean acCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_AC;
}
}
WIFIのプログラム的に有効にするために - あなたが権限を定義する必要があり
:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
でそれを設定するには:それをオフに設定するには
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
wifi.setWifiEnabled(true);
:
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
wifi.setWifiEnabled(false);
0
の場合デバイスが充電中であることを示すことができる下の機能を呼び出します。あなたが必要なタスクを実行するためにそれを使用することができます(これは、有線と無線の両方の充電のために動作します)
public static boolean isPlugged(Context context) {
boolean isPlugged= false;
Intent intent = context.registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
int plugged = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
isPlugged = plugged == BatteryManager.BATTERY_PLUGGED_AC || plugged == BatteryManager.BATTERY_PLUGGED_USB;
if (VERSION.SDK_INT > VERSION_CODES.JELLY_BEAN) {
isPlugged = isPlugged || plugged == BatteryManager.BATTERY_PLUGGED_WIRELESS;
}
return isPlugged;
}
を詳しくvisit the Android Dev site hereについて。
+0
私はこれをバックグラウンドで使用できますか?また、私はそれを繰り返し確認したい。プラグインの瞬間に充電状態を検出する必要があります。 – Farshan
+0
自分で試してみるべきです –
関連する問題
- 1. 指示内の現在の状態を検出する方法
- 2. スレッドスタックの現在の状態を確認する方法
- 3. libgit2現在のディレクトリの状態を取得する方法は?
- 4. タブレットの現在の状態を取得する方法
- 5. アンドロイドのジョブスケジューラを使用してネットワーク状態を検出する方法は?
- 6. ハスケルソフトリアルタイムの現在の状態
- 7. premake5で現在の状態を取得する方法は?
- 8. 現在のナビゲーション状態を取得する方法
- 9. Rails 4 - Statesman Gem - 現在の状態を定義する方法
- 10. Angularjsで現在の状態を取得する方法
- 11. 別のコンポーネントで現在の状態にアクセスする方法は?
- 12. 低電力状態でアンドロイドを入れる方法
- 13. USBの状態を検出するアンドロイドjava
- 14. ディスプレイモニタの電源状態を動的に検出する
- 15. ESXiホストは現在の状態で電源が入らない
- 16. 現在の状態名を返すメソッド
- 17. iOSでコンパスのキャリブレーションスイッチの状態を検出する方法
- 18. は私の現在の状態の状態
- 19. Windows 10システムの電源状態を検出します
- 20. TCPソケットの切断状態を検出する方法
- 21. Unix上でマウスの状態を検出する方法
- 22. androidの着信状態を検出する方法
- 23. GIFの状態を検出する方法
- 24. Assembly Langauge X86のオーバーフロー状態を検出する方法
- 25. ProgressDialogの状態を検出する方法
- 26. $ state.goは現在の状態から現在の状態に関連するイベントを起動しますか?
- 27. P4V現在の状態を保存
- 28. イオンアプリで現在の状態を取得
- 29. FacebookのOpenIDサポートの現在の状態
- 30. 現在の状態で以前の状態名をAngular4で取得する方法は?
しかし、どうすればバックグラウンドで繰り返し確認できますか? – Farshan
こんにちは、私はあなたがすべての情報を持っていると信じています。たとえば、放送受信機からusbChargeステータスをチェックして情報を取得するか、またはオンデマンドの例でusbChargeを返す関数を作ります。 –