こんにちは私は電話が触れられていないときにアラームを設定したい。画面に約2分間触れていない場合は、アラーム音が鳴ります。これどうやってするの?誰か助けてくれますか? ありがとうございます。AndroidがAndroidを使用してアイドル状態になっているときにアラームを設定するにはどうすればよいですか?
15
A
答えて
5
AlarmServiceを以下のコードに渡します。これにより、デバイスがアイドル状態になっている時間がわかります。
idle.java
Handler hl_timeout = new Handler();
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
try{
hl_timeout.postDelayed(DoOnTimeOut, 15000);
}catch(Exception e)
{
e.printStackTrace();
}
}
// Toast
Thread DoOnTimeOut = new Thread() {
public void run() {
try{
Toast.makeText(getApplicationContext(), "System is idle", Toast.LENGTH_LONG).show();
}catch(Exception e)
{
e.printStackTrace();
}
}
};
@Override
public void onUserInteraction()
{
super.onUserInteraction();
//Remove any previous callback
try{
hl_timeout.removeCallbacks(DoOnTimeOut);
hl_timeout.postDelayed(DoOnTimeOut, 15000);
}catch(Exception e)
{
e.printStackTrace();
}
}
希望これはあなたを助けます。
3
あなたは、アプリケーション/デバイスが
は、タイマーをリセットし、2分間、再び起動する活動クラスのメソッドonUserInteractionを拡張アイドル状態のときにもサウンドを再生するAlarmServiceを作成することができます。
2
あなたの質問が正しく理解されている場合は、ある時間間隔内にユーザーのやりとりが発生していないときにアラームをトリガーする必要があります。また、主要な要件の1つは、フォアグラウンドで実行されているアクティビティがないことです。したがって、onUserInteractionの場合はあなたのためには機能しません。 この場合、自分のAccessibilityServiceを作成した場合でも、すべてのユーザー操作で更新を受け取ることができます。
サービスを宣言するためにマニフェストにこれを追加します。
<service android:name=".MyAccessibilityService">
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService" />
</intent-filter>
</service>
そして、あなたのサービスの実装は次のようになります。
今public class MyAccessibilityService extends AccessibilityService
{
@Override
public void onServiceConnected() {
AccessibilityServiceInfo info = new AccessibilityServiceInfo();
// we are interested in all types of accessibility events
info.eventTypes = AccessibilityEvent.TYPES_ALL_MASK;
info.feedbackType = AccessibilityServiceInfo.FEEDBACK_GENERIC;
// we want to receive events in a certain interval
info.notificationTimeout = 100;
setServiceInfo(info);
Log.e("ALEX", "service connected!");
}
@Override
public void onAccessibilityEvent(AccessibilityEvent arg0)
{
Log.e("ALEX", "Event happened!");
}
}
をいつでもユーザーが、例えば、画面に触れて、あなたは意志get onAccessibilityEvent()を起動すると、アラームを起動するタイマーを再起動できます。
ただし、このアプローチには1つの欠点があります。それを機能させるには、電話設定 - >アクセシビリティに移動してアプリケーションを有効にする必要があります。そうしないと、システムはサービスを開始しません。
関連する問題
- 1. enum値を状態図の状態として使用するにはどうすればよいですか?
- 2. Androidアプリケーションで10分ごとにアラームを設定するにはどうすればよいですか?
- 3. SQL Serverが開始され使用できる状態になっていることを確認するにはどうすればよいですか?
- 4. ia92 wmqtt.jarを使用してAndroid MQTTプロジェクトを設定するにはどうすればよいですか?
- 5. Xcode 7.3常にアイドル状態になっています
- 6. Androidで忙しい電話状態を引き起こすにはどうすればよいですか?
- 7. アラームマネージャを使用してAndroidでアラームを設定する
- 8. phpを使用しているWebサイトでユーザーがアイドル状態になっていないかどうかを確認する方法
- 9. ローカル通知を使用してアプリをスリープ状態にするにはどうすればよいですか?
- 10. マルチプロセッサ用のCPUがアイドル状態で安定しています
- 11. POST-bodyを送信する前にアイドル状態になっているブラウザ
- 12. Androidでキープアライブタイムアウトを設定するにはどうすればよいですか?
- 13. UISwitchが状態を変更しないようにするにはどうすればよいですか?
- 14. サービスAndroidを設定するにはどうすればよいですか?
- 15. アイドル状態の優先順位で.NETプロセスを開始するにはどうすればよいですか?
- 16. JavaScriptを使用してハイパーリンクの状態を確認するにはどうすればよいですか?
- 17. tryステートメントを使用して競合状態を回避するにはどうすればよいですか?
- 18. Azureウェブサイトがスリープ状態にならないようにするにはどうすればよいですか?
- 19. android studioを使用してAndroidアプリケーションをテストするにはどうすればよいですか?
- 20. android sdkを使用してAndroidアプリケーションをデバッグするにはどうすればよいですか?
- 21. Javascriptのアイドル状態を検出するにはどうすればよいですか?
- 22. Android WebViewに現在のURLの状態を保存するにはどうすればよいですか?
- 23. Mavenを使用してビルドするときにプラグインを使用するようにScalaコンパイラを設定するにはどうすればよいですか?
- 24. 観測データがアイドル状態であることを検出して毎分データを注入するにはどうすればよいですか?
- 25. 設定ファイルを使用してElastic Beanstalkソリューションスタックを設定するにはどうすればよいですか?
- 26. reduxを使用して、複雑なページのコンポーネント状態を再計算しないようにするにはどうすればよいですか?
- 27. Seamを開始するContext数秒間アイドル状態にしても何度もアイドル状態になる
- 28. Androidエミュレータを設定してGalaxy Nexusをシミュレートするにはどうすればよいですか?
- 29. Androidのソースコードからデバイスのネットワーク状態を変更するにはどうすればよいですか?
- 30. AndroidパースどのようにしてgetObjectId()を使用できますか? ParseUserオブジェクトを設定するとき?
2分間画面に触れないユーザーを検出する部分はありますか? - それは難しいようです:http://stackoverflow.com/questions/4208730/how-to-detect-user-inactivity-in-android – Nobita
あなたはスクリーンセーバーのように言うことを意味しましたか? – Lucifer
そうではありません。私は、アプリケーションが30秒間アイドル状態になっているときにアラームを設定したいと思っていました。それでおしまい。 – malavika