導航:首頁 > 操作系統 > androidactivity鎖屏

androidactivity鎖屏

發布時間:2022-10-31 19:20:42

A. android miui 為什麼不能在鎖屏顯示activity

對於安卓確實所知道不多,以下僅供參考: 1 由於是系統刷機升級,MIUI 鎖屏並不是非常理想,雖然界面絢麗; 2 UC(瀏覽器)裡面的設置沒有生效或是和其他的應用不兼容

B. 安卓手機怎麼設置鎖屏動效

安卓手機要設置鎖屏動效,那麼你可以進入設置女漢子主題,然後呢,有鎖屏動效這個然後呢,根據你自己的要求。

C. android開發 怎樣鎖屏並設置解鎖密碼

Android設置鎖屏密碼的方法:

1.首先,需要找到系統自帶應用設置。

通過以上步驟輕松給android手機設置鎖屏密碼。

D. android編程 鎖頻後activity被殺死問題

android:configChanges="orientation"
你的程序不是被殺死,否則你再打開就不會是你的程序了。只是由於你沒有給這個activity聲明橫豎屏,導致的。你那個屬性避免機器後台運行時,可能被殺死。
android activity的生命周期,具體有哪些你可以網路一下。主要區別在於,初始化一些view等,要activity創建的時候,所以寫在onCreate裡面。有的邏輯不需要開始就執行,就沒必要寫在裡面。這些是生命周期的方法,不需要觸發。系統會自己調用。比如你想在activity結束的時候,清空一些數據。那麼就可以把這些操作寫在activity的onDestroy裡面,你要是都寫在oncreate裡面豈不是,activity剛啟動就執行清除數據的操作了。

E. 安卓設置鎖屏時預覽消息內容

Android鎖屏狀態下彈出activity:

1、在接收消息廣播的onReceive里,跳轉到要顯示的界面。如: Intent intent = new Intent(arg0,MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

arg0.startActivity(intent);
2、在該activity的onCreate()方法里:
super.onCreate(savedInstanceState);

getWindow().addFlags(WindowManager.LayoutParams.FLA G_SHOW_WHEN_LOCKED|WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);

setContentView(R.layout.activity_main);
3、設置activity的theme屬性:
android:theme="@android:style/Theme.Wallpaper.NoTitleBar"

4、添加點擊事件,進入app,突破鎖屏:

KeyguardManager keyguardManager = (KeyguardManager) getSystemService(KEYGUARD_SERVICE);

KeyguardLock keyguardLock = keyguardManager.newKeyguardLock("");

keyguardLock.disableKeyguard();
5、在menifest中加入該許可權:

<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>

F. 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,大功告成,看效果

G. 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>

代碼的意思在這邊就不詳細介紹了。如果你寫成功的話就一切都明白了。

H. Android系統如何開啟鎖屏功能

開啟Android系統的鎖屏功能請選擇「設置」—》選擇「安全性和位置」—》選擇「設置解鎖圖案」:(上述內容僅適用於廣東聯通用戶)

I. android 怎麼設置鎖屏界面可以橫豎屏切換

Android橫豎屏要解決的問題應該就兩個:
一.布局問題
二.重新載入問題

1.布局問題:如果不想讓軟體在橫豎屏之間切換,最簡單的辦法就是在項目的AndroidManifest.xml中找到你所指定的activity中加上android:screenOrientation屬性,他有以下幾個參數:
"unspecified":默認值 由系統來判斷顯示方向.判定的策略是和設備相關的,所以不同的設備會有不同的顯示方向.
"landscape":橫屏顯示(寬比高要長)
"portrait":豎屏顯示(高比寬要長)
"user":用戶當前首選的方向
"behind":和該Activity下面的那個Activity的方向一致(在Activity堆棧中的)
"sensor":有物理的感應器來決定。如果用戶旋轉設備這屏幕會橫豎屏切換。
"nosensor":忽略物理感應器,這樣就不會隨著用戶旋轉設備而更改了("unspecified"設置除外)。
也可以在Java代碼中通過setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE)來設置。
如果要讓軟體在橫豎屏之間切換,由於橫豎屏的高寬會發生轉換,有可能會要求不同的布局。可以通過以下方法來切換布局:
1)在res目錄下建立layout-land和layout-port目錄,相應的layout文件不變,比如main.xml。layout-land是橫屏的layout,layout-port是豎屏的layout,其他的不用管,模擬器會自動尋找。
2)通過 this.getResources().getConfiguration().orientation來判斷當前是橫屏還是豎屏然後來載入相應的 xml布局文件。因為當屏幕變為橫屏的時候,系統會重新呼叫當前Activity的onCreate方法,你可以把以下方法放在你的onCreate中來檢查當前的方向,然後可以讓你的setContentView來載入不同的layout xml.
1 if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE){
2 Log.i("info","landscape"); // 橫屏
3 }
4 else if(this.getResources().getConfiguration().orientation ==Configuration.ORIENTATION_PORTRAIT) {
5 Log.i("info","portrait"); // 豎屏
6 }
在onConfigurationChanged()方法中也可以檢測擁有硬鍵盤的鍵盤狀態
1 //檢測實體鍵盤的狀態:推出或者合上
2 if (newConfig.hardKeyboardHidden ==Configuration.HARDKEYBOARDHIDDEN_NO){
3 //實體鍵盤處於推出狀態,在此處添加額外的處理代碼
4 }
5 else if(newConfig.hardKeyboardHidden ==Configuration.HARDKEYBOARDHIDDEN_YES){
6 //實體鍵盤處於合上狀態,在此處添加額外的處理代碼
7 }
2.重新載入問題。如果不需要從新載入,可以在AndroidManifest.xml中加入配置 android:configChanges="orientation|keyboardHidden",配置 android:configChanges的作用就是如文檔所說的:Specify one or more configuration changesthat the activity will handle itself. If not specified, the activity will berestarted if any of these configuration changes happen in the system。這樣在程序中Activity就不會重復的調用onCreate()甚至不會調用onPause、onResume.只會調用一個 onConfigurationChanged(Configuration newConfig)。如果需要重新載入,則不需要做任何修改。不過如果需要在重新載入過程中保存之前的操作內容或數據,則需要保存之前的數據。然後在 activity的onCreate()中取出來。當然,如此就不能設置android:configChanges()了,否則就不會調用 onCreate()方法。
如果要徹底禁止翻轉,可以設置android:screenOrientation的屬性為nosensor,如此就可以忽略重力感應帶來的麻煩了。不過在模擬器上不管用,在真機上是正確的。android:screenOrientation="portrait"
則無論手機如何變動,擁有這個屬性的activity都將是豎屏顯示。
android:screenOrientation="landscape",為橫屏顯示。
這里提一個小知識,Android模擬器中,快捷鍵"Ctrl+F11/F12"可以實現轉屏

J. Android 下拉通知欄時Activity的生命周期——重新理解onPause()

在某個APP中,發現下拉通知欄的時候,正在播放的視頻會暫停,於是有點好奇這段操作是不是在生命周期中實現的。在網上眾多關於Activity生命周期的討論中,很多人認為 onPause() 和 onStop() 的區別就是「部分遮擋」和「全部遮擋」,那按照這個猜測來分析一下這個過程:

首先,通知欄下拉一點點,符合一般描述中「Activity被部分遮擋」—— onPause()
然後,通知欄完全落下之後,「Activity被全部遮擋」—— onStop()

於是自己寫了一個實例來驗證:

啟動APP時,毫無疑問,調用了 onCreate() → onStart() → onResume() ;
完全下拉通知欄,然後上拉通知欄,發現沒有日誌列印,說明 下拉通知欄對Activity的生命周期沒有影響

經過測試不難發現,在Activity中彈出AlertDialog、Toast時,Activity的 onPause() 並沒有調用;筆者還嘗試在MIUI系統中喚醒小愛同學,發現 onPause() 仍然沒有被調用。
但是在以下特殊的情況下, onPause() 會被調用:

跑去看文檔發現了如下信息:

發現了 onPause() 和Activity的奇妙聯系,就不難理解之前為什麼沒有被調用的問題了。

查看AlertDialog和Toast的源碼,可以發現它們顯示的原理,都是通過 WindowManager.addView() 來顯示的。也就是說,AlertDialog和Toast可以看做是當前Activity的一部分View,當然也不會對Activity的生命周期構成影響。

因此, onPause() 是否調用的關鍵就是,是否有另一個Activity參與進來了。
而網上流傳甚廣的 onPause() 和 onStop() 調用中提到的「遮擋」,應該修正為 「被Activity遮擋」

至於官方文檔中提到的, onPause() 之後會調用 onStop() 或者 onResume() ,前者很好理解,一般的退出、新啟動一個全屏Activity、鎖屏、返回HOME等操作都是這種情況;至於後者,筆者能想到的情況就是,彈出部分遮擋的Activity類型的對話框,然後按返回鍵。

閱讀全文

與androidactivity鎖屏相關的資料

熱點內容
匯編程序員待遇 瀏覽:357
怎麼批量有順序的命名文件夾 瀏覽:209
杭州程序員健身 瀏覽:17
dvd光碟存儲漢子演算法 瀏覽:758
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:672
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:486
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:383
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:350
風翼app為什麼進不去了 瀏覽:779
im4java壓縮圖片 瀏覽:362