7

私はこのコードを持っています:

wakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP
            | PowerManager.ON_AFTER_RELEASE, "MyWakeLock");

そして、FULL_WAKE_LOCK取り消し線が引かれ、「PowerManger.FULL_WAKE_LOCK は非推奨です」と表示されます。コードは機能しています。しかし、それは正確にはどういう意味ですか?そして、それは何か問題を引き起こす可能性がありますか?

4

4 に答える 4

3

非推奨とは、その機能が Android の将来のバージョンで削除される可能性があること、または代替機能が追加されたことを意味します。下位互換性を確保し、新しい標準に準拠する時間を確保するために、すぐには削除されません。

ドキュメントによると、これは次のとおりです。

「ほとんどのアプリケーションは、このタイプの wake lock の代わりに FLAG_KEEP_SCREEN_ON を使用する必要があります。これは、ユーザーがアプリケーション間を移動するときにプラットフォームによって正しく管理され、特別なアクセス許可を必要としないためです。」

したがって、現時点では問題は発生しませんが、Android の将来のバージョンでは問題が発生する可能性があります。非推奨の詳細については、こちらをご覧ください。

于 2013-09-24T07:58:55.623 に答える
2

詳細については、ここをクリックしてください。機能の詳細がすべて記載されています。現在のバージョンでは問題ありませんが、将来的には問題になる可能性があります。

于 2013-09-24T07:56:29.423 に答える
0

ウィキペディアによると、

非推奨とは、「これは引き続き使用できますが、将来のソフトウェア リリースで別のものに置き換える (または完全に削除する) 可能性があるため、当てにしないでください」という意味です。

一般的に言えば、これはこれを行うためのより良い方法があることを意味し、非推奨の方法は避ける必要があります。さらに、非推奨のメソッドも下位互換性がなく、将来のバージョンで削除される可能性があります。

開発者のウェブサイトでは、明確に言及されています

「デバイスのバッテリ寿命は、この API の使用によって大きな影響を受けます。PowerManager.WakeLocks は、本当に必要でない限り取得しないでください。可能な限り最小限のレベルを使用し、できるだけ早く解放してください。」

于 2013-09-24T08:01:10.167 に答える
0

PowerManager.FULL_WAKE_LOCK

この定数は、API レベル 17 で廃止されました。ほとんどのアプリケーションでは、このタイプの wake lock の代わりに FLAG_KEEP_SCREEN_ON を使用する必要があります。これは、ユーザーがアプリケーション間を移動するときにプラットフォームによって正しく管理され、特別なアクセス許可を必要としないためです。

ウェイク ロック レベル: 画面とキーボードのバックライトが最大の明るさでオンになるようにします。

ユーザーが電源ボタンを押すと、システムによって FULL_WAKE_LOCK が暗黙的に解放され、画面と CPU の両方がオフになります。PARTIAL_WAKE_LOCK と対比してください。

于 2013-09-24T07:57:32.713 に答える