博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[android] 手机卫士关闭自动更新
阅读量:5840 次
发布时间:2019-06-18

本文共 2408 字,大约阅读时间需要 8 分钟。

保存数据的四种方式,网络,广播提供者,SharedPreferences,数据库

 

获取SharedPreferences对象,通过getSharedPreferences()方法,参数:名称,模式

例如configMODE_PRIVATE

调用SharedPreferences对象的edit()方法,得到Editor对象

调用Editor对象的putBoolean()方法,放入布尔数据,参数:键值对,”update” false

调用Editor对象的commit()方法,提交数据

 

查看/data/data/包名/shared_perfs/config.xml这个生成的xml文件

使用命令行adb shell  cd 到上面的目录,使用cat命令查看文件

 

调用SharedPreferences对象的getBoolean()方法,得到保存的数据,参数:键,默认值

进行判断,状态设置为ture,设置文本内容

 

设置检查下载部分

得到保存的是否自动更新的状态,判断状态

如果自动更新,调用检测自动更新的代码

如果不自动更新,延迟两秒,自动跳转到主页

调用Handler对象的postDelayed()方法,参数:Runable对象,延迟的毫秒数

使用匿名内部类继承Runable对象,重写run()方法,方法里面跳转到主页

 

升级进度的TextView部分,默认隐藏,android:visibility=”gone” gone是隐藏并空出位置

在下载过程中的回调函数里面,这一瞬间显示出来

调用TextView对象的setVisibility(View.VISIBLE)

SettingActivity:

package com.qingguow.mobilesafe;import android.app.Activity;import android.content.SharedPreferences;import android.content.SharedPreferences.Editor;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import com.qingguow.mobilesafe.ui.SettingItemView;public class SettingActivity extends Activity {    private SettingItemView siv_item;    private SharedPreferences sp;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_setting);        siv_item=(SettingItemView) findViewById(R.id.siv_item);        sp=getSharedPreferences("config", MODE_PRIVATE);        //根据保存的数据设置状态        boolean update=sp.getBoolean("update", false);        if(update){            siv_item.setChecked(true);            siv_item.setDesc("自动更新已经开启");        }else{            siv_item.setChecked(false);            siv_item.setDesc("自动更新已经关闭");        }                //自动更新的点击事件        siv_item.setOnClickListener(new OnClickListener() {            @Override            public void onClick(View arg0) {                Editor editor=sp.edit();                if(siv_item.isChecked()){                    //设置不选中                    siv_item.setChecked(false);                    siv_item.setDesc("自动更新已经关闭");                    editor.putBoolean("update", false);                }else{                    //设置选中                    siv_item.setChecked(true);                    siv_item.setDesc("自动更新已经开启");                    editor.putBoolean("update", true);                }                editor.commit();            }        });    }}

 

转载于:https://www.cnblogs.com/taoshihan/p/5365536.html

你可能感兴趣的文章
OllyDBG 入门系列教学--让你瞬间成为破解高手
查看>>
Dubbo点滴(2)之集群容错
查看>>
检测不到兼容的键盘驱动程序
查看>>
listbox用法
查看>>
冲刺第九天 1.10 THU
查看>>
传值方式:ajax技术和普通传值方式
查看>>
Linux-网络连接-(VMware与CentOS)
查看>>
寻找链表相交节点
查看>>
linq 学习笔记之 Linq基本子句
查看>>
[Js]布局转换
查看>>
Java annotation 自定义注释@interface的用法
查看>>
Apache Spark 章节1
查看>>
Linux crontab定时执行任务
查看>>
mysql root密码重置
查看>>
33蛇形填数
查看>>
选择排序
查看>>
SQL Server 数据库的数据和日志空间信息
查看>>
前端基础之JavaScript
查看>>
自己动手做个智能小车(6)
查看>>
自己遇到的,曾未知道的知识点
查看>>