[android] 手机卫士关闭自动更新
2023-02-18 15:47:27 时间
保存数据的四种方式,网络,广播提供者,SharedPreferences,数据库
获取SharedPreferences对象,通过getSharedPreferences()方法,参数:名称,模式
例如config,MODE_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(); } }); } }
相关文章
- Jitpack发布Android库出现Direct local .aar file dependencies are not supported when building an AAR
- 关于Android12安装apk出现-108异常INSTALL_PARSE_FAILED_MANIFEST_MALFORMED的解决方法
- Android 多module情况下module依赖aar问题处理
- Android7.0以上的分享图片文件错误及解决方法
- Android开发 对接微信分享SDK总结
- Android RecyclerView使用ListAdapter高效刷新数据
- Android自动化测试工具调研
- Android 自动取色并设置沉浸式状态栏
- Java 断点下载(下载续传)服务端及客户端(Android)代码
- Android自定义View学习(1)——基础知识介绍
- Android webview只加载10%且出现白屏问题排查解决
- Android Studio安装插件重启插件消失
- Android Swtich开关样式调整
- Android 实现开机自启APP
- 关于TornadoFx和Android的全局配置工具类封装实现及思路解析
- Android shape与selector标签使用
- Android8.0 后台服务保活的一种思路
- 关于Android安装apk出现解析包异常问题情况总结
- Android 接入腾讯IM即时通信(详细图文)
- Android 语音播放(文字TTS)