問題タブ [android-wake-lock]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
7777 参照

android - Android-ウェイクロックが正しく取得されない、アプリはスタンバイで実行し続ける必要があります

私のアプリでは、メインアクティビティのonCreate()メソッドで、ウェイクロックを作成しています。これにより、電話がスタンバイ状態になった場合や画面がオフになった場合でもCPUが実行され続けます。

また、onCreateメソッドでは、加速度計を使用するサービスを作成するつもりです。このサービスは、アプリが開いていて加速度計の値を監視している間、継続的に実行する必要があります(これはバッテリーには適していないことはわかっていますが、それを行うために必要です)。これが現時点での私のコードで、サービスは正常に開始されます。

マニフェストに次の権限が設定されています-

私はさまざまなロックでこれを試しました-薄暗い画面と完全な明るさも役に立ちません。logcatの私の出力はここにあります-

このリンクのグーグルスタンバイエラーページのように、部分的なウェイクロックが期待どおりに機能しないと言う人を見たことがありますが、これは昨年リリースされて閉じられたので、その場合はわかりませんが、誰かがここで助けてくれますか?その最後の点に関してもHTCの欲求があります、ありがとう。

0 投票する
3 に答える
16670 参照

android - Android - ハードスリープから電話を起こして写真を撮るにはどうすればよいですか?

Android デバイスのカメラから数時間にわたって定期的に写真を撮り、タイム ラプス ビデオ効果を作成したいと考えています。

数分ごとにサービスを開始するように AlarmManager.RTC_WAKEUP フラグを設定して、Alarm Manager を設定しました。

このサービスは、部分的なウェイクロックを保持し、いくつかの作業を行った後、アクティビティを開始するアラーム マネージャーを介してブロードキャスト レシーバーを呼び出します。

アクティビティが作成 (または再開) され、独自のウェイクロックがオンになり、カメラ プレビュー サーフェスが設定されます。サーフェスがセットアップされると、SurfaceHolder リスナーの surfaceChanged() メソッドが呼び出され、最終的に写真が撮影されます。

デバイスが起動している場合、すべてが期待どおりに完全に機能します。ただし、デバイスがスリープ状態の場合、Activity の onResume() メソッドが完了すると、Activity は即座に一時停止します。カメラのプレビュー サーフェイスの初期化が完了することはなく、写真が撮影されることもありません。

だから私が持っている質問は次のとおりです。

  1. プログラムで電話をウェイクアップする方法はありますか? 私も使ってみます:

    /li>

ただし、電話がスリープ状態の場合、それは電話を目覚めさせません。

  1. プレビュー サーフェス ビューを使用せずに写真を撮る方法はありますか?

  2. 非同期コールバックに依存しない写真を撮る方法はありますか? 写真を撮るためにすべてのコードをアクティビティの onResume() メソッドに入れることはできますか?

  3. カメラのプレビューがすべてのリスナーを初期化して呼び出すのに十分な時間を確保できるように、アクティビティの onResume() メソッドを十分長く実行し続ける方法はありますか?

ウェイクロックを正しく使用しており、マニフェスト ファイルですべての権限を適切に設定しています。非同期リスナーが適切に機能するのに十分な時間、アクティビティが起動していません。

さらに問題を複雑にしているのは、すべての Android 1.6 との互換性を維持しようとしていることです。これは、私がアクセスできる唯一のテスト デバイスだからです。

これはイライラするものです!

0 投票する
2 に答える
4675 参照

android - SyncAdapterを使用せずにAndroidにアカウントを実装するにはどうすればよいですか

組み込みのアカウントシステム(AccountManager APIを使用)を利用して、Androidアプリケーションのログインシステムを実装しています。

Android 2.2以降ではすべて問題ありませんが、SyncAdapterが含まれていないAndroid 2.1では、アカウント設定画面で再起動が発生します(http://code.google.com/p/android/issues/detail?id=5009およびAccountManagerを参照)。 SyncAdapterなし?

これを回避するために、nullから戻るだけのスタブSyncAdapterを実装しIBinder onBind(Intent intent)、関連するものをマニフェストに追加しました。これにより、Android2.1での再起動の問題が解決されます。

ただし、さらに問題が発生します。アカウントが追加された後、Androidシステムはしばらくしてからアカウントの同期を開始します。エラーは発生しませんが(実際、SyncAdapterは何もしませんが、戻るまでエラーを発生させる方法はありませんnull)、同期アイコンは上部の通知バーに留まります。これにより、Android同期システムは永続的なウェイクロックを維持し、デバイスがスリープ状態になるのを防ぎます。

アカウントは、アカウント設定画面([データと同期]ヘッダーの下)に同期可能なコンポーネントを一覧表示せず、アカウントのリストの同期ステータスに対して常に[同期はオフ]と表示されます(同期アイコンが通知バー)。アカウントの同期を無効にしても、問題は解決しません。アカウントを削除すると、問題が発生しなくなります。

私の推測では、nullを返すべきではありません。ThreadedSyncAdapterの基本的な実装を返す必要がありますか?2.1および2.2以降で適切に機能する同期が関連付けられていないアカウントシステムを取得するためのヘルプは大歓迎です。

0 投票する
1 に答える
4533 参照

android - スリープ状態の Android デバイスを起動できるイベントは何ですか?

HTTPロングポーリング(Comet)を使用してサーバーからプッシュ通知を受信し続けるAndroidクライアントアプリを作成しています。

バッテリーを消耗するため、常に WakeLock を保持したくはありませんが、デバイスがスリープ モードの場合でも通知を受信できるようにする必要があります。

そして、私はこの質問を見つけました:

Android: Android デバイスの睡眠段階/レベル?

ここで、「CommonsWare」は、非 WiFi ソケットで着信パケットがデバイスをウェイクアップすると述べています。

したがって、私のソリューションは次のようになります。

しかし、通知を受け取ってからウェイクロックを要求するまでには少し時間がかかるので、私の質問は、デバイスがこのスリープ状態をどのくらい維持するかということです。この時間帯にデバイスをスリープ状態に戻すことはできますか?

0 投票する
2 に答える
1696 参照

android - 10秒ごとにPARTIAL_WAKELOCKを取得

10 秒間隔で部分的な wake lock を取得するアプリケーションに問題はありますか。これの私のユースケースは、デバイスの加速度計を介してユーザーの動きを継続的に監視できることです。基本的に、10秒ごとにアラームによって呼び出されるサービスがあります。

このサービスはウェイクロックを取得し、加速度計からいくつかの読み取り値を取得して現在の移動ステータスを判断してから、ウェイクロックを解放します。サービスの合計有効期間は約 4 秒です。

私の理解では、これにより、デバイスは毎分約 24 秒間起動状態に保たれます。理想的ではありませんが、アプリケーションの存続期間全体にわたって一定の wake lock を保持するよりも、これがより良い方法であることを願っています。

一方で、このような短い時間でウェイクロックを取得して解放する行為が、バッテリー寿命に悪影響を与える可能性はありますか?

どんな入力でも大歓迎です。

0 投票する
1 に答える
959 参照

android - CONNECTIVITY_ACTION ブロードキャストの onReceive メソッドで PARTIAL_WAKE_LOCK を保持する必要がありますか?

ConnectivityManager.CONNECTIVITY_ACTION インテント フィルターを使用してネットワーク接続の変更をリッスンする Service があります。onReceive メソッドの開始時に部分的な CPU ロックを取得して処理する必要がありますか?

0 投票する
3 に答える
5499 参照

android - BroadcastReceiver、Service、Wakelock

放送受信機でインテントを受信して​​から、サービスを開始してさらに作業を行います。デバイスがスリープ状態でこれが発生した場合、Wakelock(AlarmManger?)を取得する必要がありますか?また、なぜそれが必要なのですか?デバイスがウェイクロックを取得せずにスリープ状態になると、サービスの実行が停止しますか?

0 投票する
3 に答える
6503 参照

android - ウェイクロック画面用のAndroidサービスリスナー

みなさん、こんにちは。

緊急通報アプリケーションを開発しています。私が欲しいのは、誰かがこの特定のコードを使用すると、電話のロックが解除され、私のアプリケーションだけが実行されることです。Im juzは、受信機が必要だと考えており、アプリケーション用に独自のホーム画面とロック画面を作成する必要があるかどうか疑問に思っています。これに関するアイデアはありますか?

よろしくお願いします:)

0 投票する
2 に答える
1692 参照

android - Samsung Galaxy Tab のウェイク ロック

バックグラウンドでパケットを送受信する必要があるアプリを開発しています。しかし、画面がオフになると、CPU とネットワークも無効になることがわかりました。そのため、Android Developers で、画面がオフになった場合でも CPU が動作するようにするには、ウェイク ロックと wifi ロックを使用する必要があることを発見しました。このソリューションは、LG Optimus One などの他のデバイスでは機能しますが、Samsung Galaxy Tab では機能しません。このデバイスでは、画面がオフになるとパケット (UDP) を受信できなくなり、魔法のように電源ボタンを押して画面を再度有効にすると、再起動してパケットを受信します。私のコードでは、次のように呼び出します。

それから

これは Samsung のバグだと思いますが、よくわかりません。もし誰かがヒントをくれたら、本当に感謝します。

PS プログラミングの助けが必要です...画面がシャットダウンしないように手動設定を変更すると、これが機能することは既にわかっています。しかし、私はアプリを開発していて、コードが必要です!!

0 投票する
3 に答える
10165 参照

android - 電源ボタンの代わりにタッチで Android をアクティベート

一定期間後にタイムアウトするように画面を表示したいタブレット アプリケーションがありますが、デバイスの側面にある「電源」ボタンの代わりに画面に触れることでユーザーが再度有効にできるようにしたいと考えています。

これに対する最善のアプローチ(バッテリー性能)は何ですか?

  1. 部分的なウェイク ロックを使用する (画面は反応しますか?)
  2. 何らかの方法で画面を無効にしますが、すべて (タッチ応答を含む) は機能し続けますか?
  3. 他の?

これに関する提案はありますか?