给你网站你会怎么做的,工作证的照片几寸,wordpress建站云盘,go搭建网站背景#xff0c;今天遇项目需要#xff0c;需要在下载在后台任务运行时#xff08;如下载、上传或进行长时间计算#xff09;#xff0c;保持 CPU 活动#xff0c;然后就写了这个实现方法#xff0c;废话不多说上代码 第一步#xff0c;再清单AndroidManifest文件声明权… 背景今天遇项目需要需要在下载在后台任务运行时如下载、上传或进行长时间计算保持 CPU 活动然后就写了这个实现方法废话不多说上代码 第一步再清单AndroidManifest文件声明权限 uses-permission android:nameandroid.permission.WAKE_LOCK / import android.content.Context;
import android.os.PowerManager;import android.util.Log;/*** 屏幕唤醒*/
public class ScreenManager {private static final String TAG ScreenManager;private PowerManager powerManager;private PowerManager.WakeLock wakeLock;public ScreenManager(Context context) {powerManager (PowerManager) context.getSystemService(Context.POWER_SERVICE);wakeLock powerManager.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, MyApp::MyWakelockTag);}public void acquireWakeLock() {if (wakeLock ! null !wakeLock.isHeld()) {wakeLock.acquire();Log.d(TAG, 成功获取WakeLock);} else {Log.d(TAG, WakeLock已经被持有);}}public void releaseWakeLock() {if (wakeLock ! null wakeLock.isHeld()) {wakeLock.release();Log.d(TAG, 成功释放WakeLock);} else {Log.d(TAG, WakeLock未被持有);}}
}调用如下
public class MainActivity extends AppCompatActivity {private static final String TAG MainActivity;private ScreenManager screenManager;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);screenManager new ScreenManager(this);Log.d(TAG, MainActivity 创建完成);}Overrideprotected void onResume() {super.onResume();screenManager.acquireWakeLock();Log.d(TAG, MainActivity 恢复);}Overrideprotected void onPause() {super.onPause();screenManager.releaseWakeLock();Log.d(TAG, MainActivity 暂停);}Overrideprotected void onDestroy() {super.onDestroy();screenManager.releaseWakeLock();Log.d(TAG, MainActivity 销毁);}
} 以上就是控制设备的电源状态。它可以防止设备在运行某些操作时进入休眠状态确保应用在需要的时候能够继续运行