最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android編程實(shí)現(xiàn)一鍵鎖屏的方法

 更新時(shí)間:2015年11月28日 09:29:29   作者:lee0oo0  
這篇文章主要介紹了Android編程實(shí)現(xiàn)一鍵鎖屏的方法,結(jié)合實(shí)例詳細(xì)分析了鎖屏功能所涉及的類與具體功能實(shí)現(xiàn)技巧,需要的朋友可以參考下

本文實(shí)例講述了Android編程實(shí)現(xiàn)一鍵鎖屏的方法。分享給大家供大家參考,具體如下:

這里要用到下面兩個(gè)類:

DeviceAdminReceiver 設(shè)備管理組件。這個(gè)類提供了一個(gè)方便解釋由系統(tǒng)發(fā)出的意圖的動作。你的設(shè)備管理應(yīng)用程序必須包含一個(gè)DeviceAdminReceiver的子類。本程序中,就代表一個(gè)手機(jī)上的設(shè)備管理器.

DevicePolicyManager 一個(gè)管理設(shè)備上規(guī)范的類。 大多數(shù)客戶端必須聲明一個(gè)用戶當(dāng)前已經(jīng)啟用的DeviceAdminReceiver。 這個(gè)DevicePolicyManager為一個(gè)或者多個(gè)DeviceAdminReceiver實(shí)例管理這些規(guī)范。

DevicePolicyManager 的實(shí)例有個(gè)方法叫l(wèi)ockNow可以直接鎖定屏幕.但是在這之前,需要激活程序中的設(shè)備管理器.

下面是主類LockActivity

package com.iceman.test; 
import android.app.Activity; 
import android.app.admin.DevicePolicyManager; 
import android.content.ComponentName; 
import android.content.Context; 
import android.content.Intent; 
import android.os.Bundle; 
public class LockActivity extends Activity { 
  private DevicePolicyManager policyManager; 
  private ComponentName componentName; 
  @Override 
  public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main);  
  } 
  public void LockScreen(View v){
    policyManager = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE); 
    componentName = new ComponentName(this, LockReceiver.class); 
    if (policyManager.isAdminActive(componentName)) {//判斷是否有權(quán)限(激活了設(shè)備管理器) 
      policyManager.lockNow();// 直接鎖屏 
      android.os.Process.killProcess(android.os.Process.myPid()); 
    }else{ 
      activeManager();//激活設(shè)備管理器獲取權(quán)限 
    }   
  }
  // 解除綁定
  public void Bind(View v){
   if(componentName!=null){
    policyManager.removeActiveAdmin(componentName);
    activeManager();
   }
  }
  @Override 
  protected void onResume() {//重寫此方法用來在第一次激活設(shè)備管理器之后鎖定屏幕 
    if (policyManager!=null && policyManager.isAdminActive(componentName)) { 
      policyManager.lockNow(); 
      android.os.Process.killProcess(android.os.Process.myPid()); 
    } 
    super.onResume(); 
  } 
  private void activeManager() { 
    //使用隱式意圖調(diào)用系統(tǒng)方法來激活指定的設(shè)備管理器 
    Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN); 
    intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, componentName); 
    intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, "一鍵鎖屏"); 
    startActivity(intent); 
  } 
} 

下面是設(shè)備管理器類LockReceiver,這是一個(gè)繼承自DeviceAdminReceiver的類,可以接收到激活/接觸激活的廣播,進(jìn)行下一步操作,本程序中,只是簡單打印一下信息.

import android.app.admin.DeviceAdminReceiver; 
import android.content.Context; 
import android.content.Intent; 
public class LockReceiver extends DeviceAdminReceiver{ 
  @Override 
  public void onReceive(Context context, Intent intent) { 
    super.onReceive(context, intent); 
    System.out.println("onreceiver"); 
  } 
  @Override 
  public void onEnabled(Context context, Intent intent) { 
    System.out.println("激活使用"); 
    super.onEnabled(context, intent); 
  } 
  @Override 
  public void onDisabled(Context context, Intent intent) { 
    System.out.println("取消激活"); 
    super.onDisabled(context, intent); 
  } 
} 

主配置文件:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
  package="com.iceman.test" 
  android:versionCode="1" 
  android:versionName="1.0" > 
  <uses-sdk android:minSdkVersion="9" /> 
  <application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" > 
    <activity 
      android:name=".LockActivity" 
      android:label="@string/app_name" 
      android:theme="@android:style/Theme.Translucent" > 
      <intent-filter> 
        <action android:name="android.intent.action.MAIN" /> 
        <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
    </activity> 
    <receiver 
      android:name=".LockReceiver" 
      android:description="@string/app_name" 
      android:label="@string/app_name" 
      android:permission="android.permission.BIND_DEVICE_ADMIN" > 
      <meta-data 
        android:name="android.app.device_admin" 
        android:resource="@xml/lock_screen" /> 
      <intent-filter> 
        <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" /> 
      </intent-filter> 
    </receiver> 
  </application> 
</manifest> 

其中l(wèi)ock_screen是設(shè)備管理器的權(quán)限聲明,需要在res/xml目錄下以xml文件形式定義

<?xml version="1.0" encoding="UTF-8"?> 
<device-admin xmlns:android="http://schemas.android.com/apk/res/android" > 
  <uses-policies> 
    <!-- 鎖定屏幕 --> 
    <force-lock /> 
  </uses-policies> 
</device-admin> 

OK.現(xiàn)在自己也可以做一鍵鎖屏了.不用去網(wǎng)上找各種各樣帶廣告帶推送的了.

希望本文所述對大家Android程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Android實(shí)現(xiàn)文件的分割和組裝

    Android實(shí)現(xiàn)文件的分割和組裝

    這篇文章主要介紹了Android實(shí)現(xiàn)文件的分割和組裝,針對UDP大數(shù)據(jù)包的分割傳輸與組裝有著非常實(shí)用的價(jià)值,需要的朋友可以參考下
    2014-09-09
  • Flutter中跨組件數(shù)據(jù)傳遞的方法總結(jié)

    Flutter中跨組件數(shù)據(jù)傳遞的方法總結(jié)

    Flutter中的數(shù)據(jù)傳遞一般包括:父->子,子->父,父->父,也就是說嵌套時(shí)的傳遞以及跨頁面的傳遞,本文整理了三種我們通常使用的方法,需要的可以參考一下
    2023-06-06
  • android自定義滾軸選擇器

    android自定義滾軸選擇器

    這篇文章主要為大家詳細(xì)介紹了android自定義滾軸選擇器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • 深入理解Android中的xmlns:tools屬性

    深入理解Android中的xmlns:tools屬性

    關(guān)于xmlns:tools屬性的介紹網(wǎng)上有很多,小編覺得有必要整理一篇介紹較為詳細(xì)的內(nèi)容給大家,下面這篇文章就很深入的介紹了關(guān)于Android中的xmlns:tools屬性,有需要的朋友們可以參考借鑒,下面來一起看看吧。
    2016-12-12
  • Android仿微信圖片點(diǎn)擊全屏效果

    Android仿微信圖片點(diǎn)擊全屏效果

    這篇文章主要為大家詳細(xì)介紹了Android仿微信圖片點(diǎn)擊全屏效果的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-04-04
  • Android10 分區(qū)存儲的適配規(guī)則

    Android10 分區(qū)存儲的適配規(guī)則

    Android設(shè)備 在Sdk29己以上推出了分區(qū)存儲,類似iOS沙箱。應(yīng)用App 目標(biāo)版本號為29或以上則需要適配分區(qū)存儲,本文將具體的講解適配規(guī)則
    2021-05-05
  • Android?TextView跑馬燈實(shí)現(xiàn)原理及方法實(shí)例

    Android?TextView跑馬燈實(shí)現(xiàn)原理及方法實(shí)例

    字的跑馬燈效果在移動端開發(fā)中是一個(gè)比較常見的需求場景,下面這篇文章主要給大家介紹了關(guān)于Android?TextView跑馬燈實(shí)現(xiàn)原理及方法的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • Android實(shí)現(xiàn)app應(yīng)用多語言切換功能

    Android實(shí)現(xiàn)app應(yīng)用多語言切換功能

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)app應(yīng)用多語言切換功能的相關(guān)資料,類似于微信的語言切換,感興趣的小伙伴們可以參考一下
    2016-08-08
  • Android 中 Fragment的使用大全

    Android 中 Fragment的使用大全

    通常地 fragment做為宿主activity UI的一部分, 被作為activity整個(gè)view hierarchy的一部分被嵌入。本篇文章給大家介紹android fragment使用,需要的朋友一起看看吧
    2015-10-10
  • Android實(shí)現(xiàn)雅虎新聞?wù)虞d視差動畫效果

    Android實(shí)現(xiàn)雅虎新聞?wù)虞d視差動畫效果

    這篇文章主要介紹了Android實(shí)現(xiàn)雅虎新聞?wù)虞d視差動畫效果,通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-08-08

最新評論

璧山县| 芦溪县| 游戏| 武清区| 衡阳市| 古丈县| 宁明县| 祥云县| 大化| 金堂县| 兰考县| 九龙县| 湘阴县| 荥阳市| 河津市| 南郑县| 镇平县| 湖北省| 乐平市| 叶城县| 天峻县| 宁德市| 大化| 嘉祥县| 台山市| 玉山县| 香河县| 桂平市| 登封市| 托里县| 洛扎县| 襄汾县| 沙洋县| 刚察县| 桦甸市| 乐业县| 兴海县| 巴林左旗| 贺州市| 陇西县| 大宁县|