[android] 手机卫士关闭自动更新

保存数据的四种方式,网络,广播提供者,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;
 android.content.SharedPreferences;
 android.content.SharedPreferences.Editor;
 android.os.Bundle;
 android.view.View;
 android.view.View.OnClickListener;

 com.qingguow.mobilesafe.ui.SettingItemView;

public class SettingActivity extends Activity {
    private SettingItemView siv_item;
     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();
            siv_item.setDesc("自动更新已经关闭");
        }
        
        自动更新的点击事件
        siv_item.setOnClickListener(new OnClickListener() {
            @Override
             onClick(View arg0) {
                Editor editor=sp.edit();
                (siv_item.isChecked()){
                    设置不选中
                    siv_item.setChecked();
                    siv_item.setDesc("自动更新已经关闭");
                    editor.putBoolean("update",1)">);
                }{
                    设置选中
                    siv_item.setChecked();
                    siv_item.setDesc("自动更新已经开启");
                }
                editor.commit();
            }
        });
    }
}

 

相关文章

AdvserView.java package com.earen.viewflipper; import an...
ImageView的scaleType的属性有好几种,分别是matrix(默认)...
文章浏览阅读8.8k次,点赞9次,收藏20次。本文操作环境:win1...
文章浏览阅读1.2w次,点赞15次,收藏69次。实现目的:由main...
文章浏览阅读3.8w次。前言:最近在找Android上的全局代理软件...
文章浏览阅读2.5w次,点赞17次,收藏6次。创建项目后,运行项...