淺析Android 手機衛士裝置管理許可權鎖屏_Android

來源:互聯網
上載者:User

推薦閱讀:

淺析Android手機衛士sim卡綁定

深入淺析Android手機衛士儲存密碼時進行md5加密

詳解Android 手機衛士設定嚮導頁面

淺析Android手機衛士關閉自動更新

淺析Android手機衛士自訂控制項的屬性

淺析Android手機衛士讀取連絡人

淺析Android手機衛士接收簡訊指令執行相應操作

淺析Android手機衛士手機定位的原理

淺析Android手機衛士之手機實現簡訊指令擷取位置

裝置管理員 Device Admin

擷取DevicePolicyManager對象,通過getSystemService(DEVICE_POLICY_MANAGER),裝置策略管理器

調用DevicePolicyManager對象的lockNow()方法,鎖定,此時會報 安全異常

建立一個類MyAdmin繼承系統的DeviceAdminReceiver,這個是廣播接收者

資訊清單檔進行註冊

添加<receiver>節點,設定名稱

設定許可權 android:permission=”android.permission.BIND_DEVICE_ADMIN”

添加<meta-data>中繼資料節點,設定名稱 android:name=”android.app.device_admin”

設定資源 android:resource=”@xml/device_admin_sample”

在res目錄下建立xml的檔案夾,建立一個device_admin_sample.xml檔案

添加<intent-filter>節點,添加動作,android.app.action.DEVICE_ADMIN_ENABLED

此時還會報錯

開啟系統設定,找到裝置管理員,勾選裝置管理員許可權,啟用裝置

開啟管理員權限

擷取Intent對象,new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN)

調用Intent對象putExtra(),傳遞資料,要啟用的組件,

參數:DevicePolicyManager.EXTRA_DEVICE_ADMIN,ComponentName組件名對象

擷取ComponentName對象,new出來,參數:上下文,Myadmin.class

調用Intent對象putExtra(),傳遞解說資料,勸說使用者開啟,參數:

DevicePolicyManager.EXTRA_ADD_EXPLANATION,文本

調用startActivity()

調用DevicePolicyManager對象的isAdminActive()方法,可以判斷是否有管理員權限,參數:ComponentName對象

調用DevicePolicyManager對象的resetPassword()方法,重設密碼,參數:password,0,把password設定為””可以取消密碼

調用DevicePolicyManager對象的wipeData()方法,清除資料,參數:清除sd卡DevicePlocyManager.WIPE_EXTERANL_STORGE

如果是0,就是恢復出廠預設值

卸載軟體

這個裝上就卸載不掉了

調用DevicePolicyManager對象的removeActiveAdmin()方法,清除管理員權限,參數:ComponentName組件名對象,擷取ComponentName對象,new出來,參數:上下文,Myadmin.class

擷取Intent對象

調用Intent對象的setAction()方法,設定動作,參數:android.intent.action.VIEW

調用Intent對象的addCategory()添加類型,參數:android.intent.category.DEFAULT

調用Intent對象的setData(),設定資料,

參數:Uri對象,擷取Uri對象Uri.parse(“package:”+getPackageName())

調用startActivity()

device_admin_sample.xml

<device-admin xmlns:android="http://schemas.android.com/apk/res/android"><uses-policies><limit-password /><watch-login /><reset-password /><force-lock /><wipe-data /><expire-password /><encrypted-storage /><disable-camera /></uses-policies></device-admin>

package com.tsh.mylockscreen;

import android.app.Activity;import android.app.admin.DevicePolicyManager;import android.content.ComponentName;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.view.View;import android.widget.Toast;public class MainActivity extends Activity {private DevicePolicyManager dpm;ComponentName who;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);dpm = (DevicePolicyManager) getSystemService(DEVICE_POLICY_SERVICE);who=new ComponentName(this, MyAdmin.class);}// 一鍵鎖屏public void lockScreen(View v) {if (dpm.isAdminActive(who)) {dpm.lockNow();dpm.resetPassword("123", 0);} else {Intent intent =new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, who);intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,"快開啟吧");startActivity(intent);Toast.makeText(this, "沒有裝置管理許可權", 1).show();}}//一鍵卸載public void uninstall(View v) {dpm.removeActiveAdmin(who);Intent intent=new Intent();intent.setAction(Intent.ACTION_DELETE);intent.addCategory("android.intent.category.DEFAULT");intent.setData(Uri.parse("package:"+getPackageName()));startActivity(intent);}}

以上所述是小編給大家介紹的Android 手機衛士裝置管理許可權鎖屏的相關知識,希望對大家有所協助!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.