zoukankan      html  css  js  c++  java
  • [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;
    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();
                }
            });
        }
    }
  • 相关阅读:
    题解-CF617E XOR and Favorite Number
    题解-P3174 [HAOI2009]毛毛虫
    数论相关
    力扣 403 青蛙过河 搜索 || 动态规划
    【转载】剑指Offer 26 树的子结构
    三元组 蓝桥杯
    剑指 Offer 14- I. 剪绳子
    【转载】剑指 Offer 43. 1~n整数中1出现的次数
    n个节点的二叉树有几种情况
    1044. 最长重复子串 二分 + Rabin-Karp | | 后缀数组
  • 原文地址:https://www.cnblogs.com/taoshihan/p/5365536.html
Copyright © 2011-2022 走看看