真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

[Android學(xué)習(xí)筆記七]設(shè)備管理服務(wù)示例開發(fā)

   關(guān)于Android Device Administratioin介紹可參見文檔 docs/guide/topics/admin/device-admin.html 小節(jié)。

公司主營業(yè)務(wù):成都網(wǎng)站設(shè)計、做網(wǎng)站、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出曾都免費做網(wǎng)站回饋大家。

   本文通過示例演示Android Device Policy管理的實現(xiàn)。

   1.示例基本操作圖

   

     [Android學(xué)習(xí)筆記七] 設(shè)備管理服務(wù)示例開發(fā)

     上圖是本示例的主界面,通過應(yīng)用程序來實現(xiàn)設(shè)備管理,本示例實現(xiàn)密碼設(shè)置管理。

     

     1.1 通過點擊“啟動設(shè)備管理器”按鈕來激活設(shè)備管理

   

     [Android學(xué)習(xí)筆記七] 設(shè)備管理服務(wù)示例開發(fā)      

      應(yīng)用程序用通知設(shè)備管理啟用,用戶點擊激活,應(yīng)用程序具備設(shè)備管理能力。

    1.2  通過點擊“設(shè)置密碼規(guī)則”按鈕來設(shè)置鎖屏密碼的限制規(guī)則,要使用該策略需要在設(shè)備管理的使用策略列表中添加limit-password.

   

     

     [Android學(xué)習(xí)筆記七] 設(shè)備管理服務(wù)示例開發(fā)[Android學(xué)習(xí)筆記七] 設(shè)備管理服務(wù)示例開發(fā)[Android學(xué)習(xí)筆記七] 設(shè)備管理服務(wù)示例開發(fā)

     示例中調(diào)用了設(shè)置新密碼的ACTION(DevicePolicyManager.ACTION_SET_NEW_PASSWORD),通過設(shè)置后,看以看到屏幕鎖屏需要密碼。  

  

    1.3 通過點擊“修改密碼”按鈕則可以將文本框中的內(nèi)容作為鎖屏密碼,該步驟可以通過程序完成。

   

    [Android學(xué)習(xí)筆記七] 設(shè)備管理服務(wù)示例開發(fā)

    調(diào)用DevicePolicyManager的重置密碼方法(resetPassword),即可在應(yīng)用程序中對鎖屏密碼進行重置。

  2. 具體實現(xiàn)

  

     實現(xiàn)上述整個示例需要:

     a.界面布局;實際應(yīng)用中根據(jù)具體情況而定

     b.DevicePolicyManager類的具體使用

     c.DeviceAdminReceiver類的子類話,來實現(xiàn)具體廣播事件的處理

     d.AndroidManifest.xml文件中廣播接收類的配置

     c.應(yīng)用程序中需要的設(shè)備管理策略列表

   

     注:本示例代碼使用了Butterknife框架。

   2.1 示例程序界面(layout/activity_device_admin.xml)

     



    
        
        

   

    2.2 Activity類和自定義的DeviceAdminReceiver類

package secondriver.sdk.activity;

import android.app.Activity;
import android.app.admin.DeviceAdminReceiver;
import android.app.admin.DevicePolicyManager;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import butterknife.Bind;
import butterknife.ButterKnife;
import butterknife.OnClick;
import secondriver.sdk.R;

/**
 * Author : secondriver
 * Created : 2015/11/27
 */
public class DeviceAdminActivity extends Activity {

    @Bind(R.id.pwd_editText)
    public EditText pwdEditText;

    private DevicePolicyManager mDevicePolicyManager;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_device_admin);
        ButterKnife.bind(this);
        mDevicePolicyManager = (DevicePolicyManager) getSystemService(DEVICE_POLICY_SERVICE);
    }

    //單擊啟用設(shè)備管理按鈕
    @OnClick(R.id.device_admin_button)
    public void onClickDeviceButton(Button button) {
        Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
        intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, new ComponentName(this, MyDeviceAdminReceiver.class));
        intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, "啟動設(shè)備管理器");
        startActivityForResult(intent, 1);
    }

    //單擊設(shè)置密碼規(guī)則按鈕
    @OnClick(R.id.pwd_rule_set_button)
    public void onClickPwdRuleSetButton(Button button) {
        Intent intent = new Intent(DevicePolicyManager.ACTION_SET_NEW_PASSWORD);
        startActivityForResult(intent, 2);
    }

    //單擊修改密碼按鈕
    @OnClick(R.id.modify_pwd_button)
    public void onClickModifyPwdButton(Button button) {
        String pwd = pwdEditText.getText().toString();
        ComponentName receiver = new ComponentName(this, MyDeviceAdminReceiver.class);
        boolean active = mDevicePolicyManager.isAdminActive(receiver);
        if (active) {
            boolean rs = mDevicePolicyManager.resetPassword(pwd, DevicePolicyManager.RESET_PASSWORD_REQUIRE_ENTRY);
            if (rs) {
                Toast.makeText(this, "密碼修改成功", Toast.LENGTH_SHORT).show();
            } else {
                Toast.makeText(this, "密碼修改失敗", Toast.LENGTH_SHORT).show();
            }
        } else {
            Toast.makeText(this, "沒有Active Admin", Toast.LENGTH_SHORT).show();
        }
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        switch (requestCode) {
            case 1:
                if (resultCode == RESULT_OK) {
                    Toast.makeText(this, "設(shè)備管理器開啟成功", Toast.LENGTH_SHORT).show();
                } else {
                    Toast.makeText(this, "設(shè)備管理器開啟失敗", Toast.LENGTH_SHORT).show();
                }
                break;
            case 2:
                if (resultCode == RESULT_OK) {
                    Toast.makeText(this, "密碼規(guī)則設(shè)置成功", Toast.LENGTH_SHORT).show();
                } else {
                    Toast.makeText(this, "密碼規(guī)則設(shè)置失敗", Toast.LENGTH_SHORT).show();
                }
                break;
            default:
                break;
        }
    }

    //自定義的設(shè)備管理廣播接收類,可以重寫DeviceAdminReceiver中的方法,來實現(xiàn)具體功能
    public static class MyDeviceAdminReceiver extends DeviceAdminReceiver {

        /**
         * 重寫其中方法
         * 

         * More          */         @Override         public void onDisabled(Context context, Intent intent) {             super.onDisabled(context, intent);             //設(shè)備管理禁用         }         @Override         public void onEnabled(Context context, Intent intent) {             super.onEnabled(context, intent);             //設(shè)備管理啟用         }     } }

   2.3 配置設(shè)備管理接收者


        
            
            
                
            
        

    xml/device_admin內(nèi)容:



    
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    

    示例生成apk,該應(yīng)用具體了設(shè)備管理的功能。


網(wǎng)站名稱:[Android學(xué)習(xí)筆記七]設(shè)備管理服務(wù)示例開發(fā)
文章地址:http://weahome.cn/article/ispeej.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部