編輯:關於android開發
本文開始逐步實現設置中心的“手機防盜”功能模塊

本文地址:/www.cnblogs.com/wuyudong/p/5939123.html,轉載請注明出處。
點擊“手機防盜”,如果之前沒有設置過密碼,則彈出下面的對話框:

如果已經設置過密碼,則彈出下面的對話框:

由於需要存儲保存的密碼狀態,可以使用SharedPreferences
在之前創建的SpUtil類中添加下面的代碼:
// 寫
/**
* 寫入String變量至sp中
* @param context 上下文環境
* @param key 存儲節點名稱
* @param value 存儲節點的值String
*/
public static void putString(Context context, String key, String value) {
// (存儲節點文件名稱,讀寫方式)
if (sp == null) {
sp = context.getSharedPreferences("config", context.MODE_PRIVATE);
}
sp.edit().putString(key, value).commit();
}
/**
* 從sp中讀取String
* @param context 上下文環境
* @param key 存儲節點名稱
* @param defValue 存儲節點默認值
* @return 默認值或者此節點讀取到的結果
*/
public static String getString(Context context, String key, String defValue) {
// (存儲節點文件名稱,讀寫方式)
if (sp == null) {
sp = context.getSharedPreferences("config", context.MODE_PRIVATE);
}
return sp.getString(key, defValue);
}
這樣,當鼠標點擊的時候通過監聽點擊事件,加入判斷邏輯
private void showDialog() {
//判斷本地是否有存儲密碼(sp 字符串)
String psd = SpUtil.getString(this, ConstantValue.MOBILE_SAFE_PSD, "");
if(TextUtils.isEmpty(psd)){
//1,初始設置密碼對話框
showSetPsdDialog();
}else{
//2,確認密碼對話框
showConfirmPsdDialog();
}
}
/**
* 確認密碼對話框
*/
private void showConfirmPsdDialog() {
}
/**
* 設置密碼對話框
*/
private void showSetPsdDialog() {
}
其中MOBILE_SAFE_PSD為ConstantValue類中的常量
package com.wuyudong.mobilesafe.Utils;
/**
* Created by wuyudong on 2016/10/6.
*/
public class ConstantValue {
/**
* 是否開啟更新key
*/
public static final String OPEN_UPDATE = "open_update";
/**
* 是否設置密碼key
*/
public static final String MOBILE_SAFE_PSD = "mobile_safe_psd";
}
接下來就剩下在showConfirmPsdDialog和showSetPsdDialog方法中添加代碼了。
Activity啟動過程源碼分析
Activity啟動過程源碼分析 其實寫分析源碼文章總會顯得很復雜很乏味,但是梳理自己看源碼時的一些總結也是一種提高。這篇博客分析下Activity啟動過程源碼,我會盡量
ReactNative的ViewPagerAndroid簡述
ReactNative的ViewPagerAndroid簡述 ViewPager是Android中比較常見的頁面切換控件, 同時, 在UIExplorerApp中也有
Android群英傳-拼圖游戲puzzle-6點吐槽
Android群英傳-拼圖游戲puzzle-6點吐槽 一、緣由 經常寫文章,混了一些C幣。最近在深入學習Android應用開發,就從商城裡買了一本《Android群英
【lushengduan】02、Activity的基本認識 如何彈出一條Toast提示框,lushengduantoast
【lushengduan】02、Activity的基本認識 如何彈出一條Toast提示框,lushengduantoast一、Activity的簡要理解 &n
The Genymotion Virtual device could not obtain an IP address解決辦法,genymotionobtain
The Genymotion Virtual device could