android鎖屏實現
① 安卓手機怎麼設置鎖屏密碼
若使用的是vivo手機,設置鎖屏密碼可參考以下路徑:
OriginOS/Funtouch OS 3.0/iQOO (Monster) UI及以上系統設置鎖屏密碼
1、進入設置--「指紋、面部與密碼」/「指紋與密碼」/「面搜伏部與密碼」中,設置密保問題,選擇「開啟鎖屏密碼」即可設置鎖屏密碼;
2、鎖屏密碼默認設置為6位數字密碼,點擊「其他密碼類型/密碼選項」可以選擇「圖案密納漏搭碼」、「4位數字密碼」、「4-16位數字密碼」、「混合密碼」;
Funtouch OS 3.0以下系統設置鎖屏密碼
1、進入設置-- 「安全」/「指紋與密碼」--屏幕鎖定--選擇「圖案」或「密碼」即可;
2、洞拿部分機型是進入設置--更多設置--安全,選擇「密碼」是輸入4位數字密碼,不能選擇設置6位數字密碼。
② android 程序如何實現熄滅屏幕
一. 前言
我們的Android應用程序很多需要和亮屏和熄屏打交道,比如鬧鍾的時候,需要保持亮屏,之後又需要熄屏。那麼今天,我們來分析下這方面的功能。
二. 系統服務 --- PowerManager.java
顧名思義,PowerManager.java就是管理我們電源方面的功能的,當然也包括我們屏幕的亮和熄滅。沒錯,我們的應用程序就是通過這個系統服務來實現亮屏和熄屏的功能的。
1. 應用程序獲取PowerManager服務, 我們可以這樣書寫:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
因為PowerManager是系統服務,所以它的生命周期不是應用程序所能控制的;應用程序只能通過系統,向系統請求獲取PowerManager服務,然後系統把這個服務的應用給我們。
2. goToSleep()方法, 這個方法可以強制我們的屏幕熄屏。我們可以這樣調用:
在上面拿到pm對象之後,這樣調用 pm.goToSleep(SystemClock.uptimeMillis());
3. setBacklightBrightness()方法,這個方法可以設置背光的亮度,從0-255
三. 定時熄滅屏幕
那麼這里,還可以介紹一個控制屏幕的方法就是PowerManager.WakeLock
顧名思義,WakeLock這個東西就是亮屏控制,這里說的亮屏,它定義了幾種類型的亮屏。如下:
類型 cpu 屏幕 鍵盤
PARTIAL_WAKE_LOCK on off off
SCREEN_DIM_WAKE_LOCK on dim off
SCREEN_BRIGHT_WAKE_LOCK on Bright off
FULL_WAKE_LOCK on Bright Bright
由於它定義了這么多類型,每種類型可以指定相對應的部件工作和不工作。那麼我們就可以利用這些類型,從最細粒度來控制我們的屏幕,控制我們的電源,從而讓我們的電源工作時間盡可能的延長(大家都知道,智能手機的電池問題是一個硬傷, 每天一充電,有木有? 別人說用安卓手機的男人都是顧家好男人,因為他每天晚上都要回家充電。。^^).
好的,好的,閑話不扯,繼續。。。
怎麼使用這個WakeLock呢?我們可以這樣寫:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "TAG");
wakeLock.acquire();
//做我們的工作,在這個階段,我們的屏幕會持續點亮
//釋放鎖,屏幕熄滅。
wl.release();
那麼這里我們也可以這樣使用,就是多少時間後熄滅屏幕
首先點亮屏幕
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "TAG");
wakeLock.acquire();
然後
mTimeHandler.postDelayed(new Runnable(){
public void run(){
wakeLock.release();
}
}, 10*1000);
嗯,延遲10s後熄滅屏幕。。。。
那麼,這里要注意的是acquire()和release()要成對調用哦!也就是說,你申請了亮屏,過段時間,你要是釋放它。
③ android怎麼實現我要學霸的強制鎖屏功能
android 手機 debug版本(即開發版本,不是發出去生產的版本)
數據線
方法/步驟
我這里介紹的方式是針對手機系統是debug版本的,因為生產版本不讓用戶自己修改系統的一些參數
先上代碼解釋清楚原理,點擊power按鈕,系統會發消息給KeyguardViewMediator,然後消息傳遞給KeyguardViewManager,然後會掉用show方法,來顯示鎖屏。具體的創建鎖屏view又會調用maybeCreateKeyguardLocked方法,現在來具體看下這個方法
這個方法里的lp.screenOrientation = enableScreenRotation ? ActivityInfo.SCREEN_ORIENTATION_USER : ActivityInfo.SCREEN_ORIENTATION_NOSENSOR;就是在設置鎖屏橫豎屏。如果enableScreenRotation為true則屏幕根據用戶拿手機方式自感應。false反之。我們在這里就是想讓enableScreenRotation為true,這樣鎖屏才能橫屏
進一步就看boolean enableScreenRotation = shouldEnableScreenRotation();然後具體看這個shouldEnableScreenRotation方法。容易看到具體的true或者false是根據lockscreen.rot_override和config_enableLockScreenRotation決定的。只要其中一個為true,enableScreenRotation的值就為true。然而config_enableLockScreenRotation的值通過查找為false,這樣就需要我們修改lockscreen.rot_override的值為true,來實現目的
但是搜索整個framework代碼發現,只有get此值的地方,沒有set的地方。後來再看發現,此值是個SystemProperties,於是通過adb shell setprop lockscreen.rot_override也沒有找到此系統參數。最後推測谷歌原生代碼,並未對此參數進行設置,這也就解釋了為什麼不能橫屏,因為shouldEnableScreenRotation一直返回的值為false。
好了原理就是這樣。我們怎麼實現橫屏呢?就是想發放將lockscreen.rot_override設為true。
首先打開cmd 窗口,adb root 獲得手機root許可權。adb remount,獲得寫許可權。adb shell setprop lockscreen.rot_override true
ok,大功告成,看效果
④ android中怎樣調用系統的鎖屏功能
要先注冊為admin的。相關代碼:
mAdminName = new ComponentName(this, MyAdmin.class);
//
public static class MyAdmin extends DeviceAdminReceiver {
// implement onEnabled(), onDisabled(), …
public void onEnabled(Context context, Intent intent) {
Log.d(LOG_TAG, "MyAdmin enabled");
}
public void onDisabled(Context context, Intent intent) {
Log.d(LOG_TAG, "MyAdmin disabled");
}
}
//第一次啟動會讓你手動去確認
if (!mDPM.isAdminActive(mAdminName)) {
// try to become active – must happen here in this activity,
// to get
// result
Intent intent = new Intent(
DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,
mAdminName);
intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,
"Additional text explaining why this needs to be added.");
startActivityForResult(intent, 1);
}
//Receiver手動在AndroidManifest.xml裡面注冊一下
其中添加
<meta-data android:name="android.app.device_admin"
android:resource="@xml/my_admin" />
<intent-filter>
<action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
</intent-filter>
還有android:permission="android.permission.BIND_DEVICE_ADMIN"
最後:在res下建立/xml/my_admin.xml,內容如下
<?xml version="1.0" encoding="utf-8"?>
<device-admin xmlns:android="http://schemas.android.com/apk/res/android">
<uses-policies>
<limit-password />
<watch-login />
<reset-password />
<force-lock />
<wipe-data />
</uses-policies>
</device-admin>
代碼的意思在這邊就不詳細介紹了。如果你寫成功的話就一切都明白了。
⑤ 安卓手機如何自動鎖屏
安卓手機自動鎖屏方法
第一步
打開手機桌面上的【設置/設定】
第二步
向下滑動,選擇【更多設置】
第三步
選擇底部的【自動鎖屏】
第四步
選擇鎖屏的時間。(個人推薦30秒或者1分鍾)
⑥ android開發 怎樣鎖屏並設置解鎖密碼
Android設置鎖屏密碼的方法:
1.首先,需要找到系統自帶應用設置。
通過以上步驟輕松給android手機設置鎖屏密碼。