package com.test; import java.io.FileWriter; import java.io.IOException; import android.app.Activity; import android.app.AlertDialog; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.os.PowerManager; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.TextView; public class MainActivity extends Activity implements OnClickListener { Button stopBut; Button clearBut; TextView textView; CheckBox mCheckBox1, mCheckBox2; int bootNumber; boolean isCBChecked; boolean isReboot = false; Context mContext; private static final String BOOT_NUMBER = "mBootNumber"; private static final int SHUT_DOWN = 0; private static final int PLAY_VIDEO = 1; private static final String TAG = "MainActivity"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mContext = this; stopBut = (Button) findViewById(R.id.stopBut); clearBut = (Button) findViewById(R.id.clearBut); textView = (TextView) findViewById(R.id.mTextView); mCheckBox1 = (CheckBox) findViewById(R.id.CheckBox1); mCheckBox2 = (CheckBox) findViewById(R.id.CheckBox2); stopBut.setOnClickListener(this); clearBut.setOnClickListener(this); onReboot(); // 启动保存log日志apk Intent intent = new Intent(); intent.setComponent(new ComponentName("com.logcat", "com.logcat.MainActivity")); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); //Intent mIntent = new Intent(); //mIntent = getPackageManager().getLaunchIntentForPackage(packageName); //startActivity(mIntent); SharedPreferences pres = getSharedPreferences(BOOT_NUMBER,Context.MODE_WORLD_READABLE); if (pres != null) { bootNumber = pres.getInt("boot_Number", 0); isCBChecked = pres.getBoolean("CheckBox_", true); } Log.i(TAG, "---------onCreate number:" + bootNumber); textView.setText("开机次数:" + bootNumber); bootNumber++; if (isCBChecked) { mCheckBox1.setChecked(true); mCheckBox2.setChecked(false); mHandler.sendEmptyMessageDelayed(SHUT_DOWN, 8000); Log.i(TAG, "---------isCBChecked:mCheckBox1" ); } else { mCheckBox1.setChecked(false); mCheckBox2.setChecked(true); mHandler.sendEmptyMessageDelayed(PLAY_VIDEO, 4000); Log.i(TAG, "---------isCBChecked:mCheckBox2" ); } mCheckBox1 .setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { SharedPreferences pres = getSharedPreferences( BOOT_NUMBER, Context.MODE_WORLD_READABLE); if (isChecked) { isCBChecked = true; mCheckBox1.setChecked(true); mCheckBox2.setChecked(false); if (pres != null) { SharedPreferences.Editor ed = pres.edit(); ed.putBoolean("CheckBox_", true); ed.commit(); } } else { isCBChecked = false; SharedPreferences.Editor ed = pres.edit(); ed.putBoolean("CheckBox_", false); ed.commit(); } } }); mCheckBox2 .setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { SharedPreferences pres = getSharedPreferences( BOOT_NUMBER, Context.MODE_WORLD_READABLE); if (isChecked) { isCBChecked = false; mCheckBox2.setChecked(true); mCheckBox1.setChecked(false); if (pres != null) { SharedPreferences.Editor ed = pres.edit(); ed.putBoolean("CheckBox_", false); ed.commit(); } } else { isCBChecked = true; SharedPreferences.Editor ed = pres.edit(); ed.putBoolean("CheckBox_", true); ed.commit(); } } }); } private Handler mHandler = new Handler() { @Override public void handleMessage(Message msg) { switch (msg.what) { case SHUT_DOWN: onShutdown(); break; case PLAY_VIDEO: onPlayVideo(); break; default: break; } } }; @Override public void onClick(View view) { if (view == stopBut) { Log.i(TAG, " stop"); new AlertDialog.Builder(this).setMessage("停止重启设备").setPositiveButton("OK", null).show(); stop(); mHandler.removeMessages(SHUT_DOWN); } else if (view == clearBut) { Log.i(TAG, " clear"); SharedPreferences pres = getSharedPreferences(BOOT_NUMBER,Context.MODE_WORLD_READABLE); if (pres != null) { SharedPreferences.Editor ed = pres.edit(); ed.putInt("boot_Number", 0); ed.commit(); } bootNumber = 0; textView.setText("开机次数:" + 0); } } public void onShutdown() { SharedPreferences pres = getSharedPreferences(BOOT_NUMBER,Context.MODE_WORLD_READABLE); if (pres != null) { SharedPreferences.Editor ed = pres.edit(); ed.putInt("boot_Number", bootNumber); ed.commit(); } //关机 PowerManager pm = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); pm.reboot("recovery"); } private void onPlayVideo(){ mHandler.sendEmptyMessageDelayed(SHUT_DOWN, 90000); Intent playVideo = new Intent(); playVideo.setClass(MainActivity.this, VideoActicity.class); startActivity(playVideo); } private void stop() { try { FileWriter fw = new FileWriter("/sys/misc/poweron_status"); fw.write("0x5a"); fw.close(); Log.i(TAG, "---------stop"); } catch (IOException e) { e.printStackTrace(); new AlertDialog.Builder(this).setMessage(e.getMessage()) .setPositiveButton("OK", null).show(); } } //修改文件 private void onReboot() { try { FileWriter fw = new FileWriter("/sys/misc/poweron_status"); fw.write("0x87"); fw.close(); Log.i(TAG, "---------onReboot"); } catch (IOException e) { e.printStackTrace(); new AlertDialog.Builder(this).setMessage(e.getMessage()) .setPositiveButton("OK", null).show(); } } @Override protected void onDestroy() { super.onDestroy(); mHandler.removeMessages(SHUT_DOWN); mHandler.removeMessages(PLAY_VIDEO); } }
相关推荐
简单的安卓登陆界面,适合新手学习,SharedPreferences保存用户数据,SQL数据库操作等。
使用SharedPreferences保存数据
在Android开发中,有时候有些数据需要保存,在下次打开能够使用,那么如何保存呢?本资源通过一个例子使用SharedPreferences保存数据。
使用ViewPager及SharedPreferences保存用户数据的demo。实现引导界面及保存用户是否首次启动程序
SharedPreferences 封装,保存基本数据类型,保存对象
sharedpreferences 保存对象
android 使用SharedPreferences对数据存储/删除/读取/文件删除
layout9为SharedPreferences数据存储和读取功能应该的一个关于记住密码功能实例。 layout11为SharedPreferences的数据存储和读取实例。
很多时候我们开发的软件需要向用户提供软件参数设置功能,例如我们常用的QQ,用户可以设置是否允许陌生人添加自己为...使用 SharedPreferences保存数据,其背后是用xml文件存放数据,文件存放在/data/data/<package
主要介绍了Android学习之使用SharedPreferences保存应用程序数据的相关资料,需要的朋友可以参考下
数据持久化就是指将那些内存中的瞬时数据保存到持久化设备中(如手机文件、数据库等),当关机,停电后,数据不丢失。 Android 系统中主要提供了三种方式用于实现数据持久化功能,分别是: 1、文件存储 2、...
Android使用SharedPreferences进行数据存储,缓存ID等数据
Android 3种数据保存(SharedPreferences存储 内部文件存储 数据库存储),如项目包有问题请联系我谢谢
Android项目开发中使用的数据存储方式有:网络存储、sqlite存储、File存储和SharedPreferences存储,四种存储方式对应的Demo别人是NetworkDemo、SqliteDemo、FileDemo和SharedPreferencesDemo,根据应用的场景选择...
SharedPreferences存储+SD卡存储SharedPreferences存储特点写数据读数据案例(记住用户登录信息)外部文件存储(SD卡)重要代码读写权限案例(从网络下载图片保存到SD卡,再读取到页面) SharedPreferences存储 特点 1...
使用SharedPreferences保存key-value对
记得当时毕业设计其中一项是天气预报, 当时还用自己做的天气...xml解析 天气接口查询 闹钟 后台service 以及系统通知 语音播报 SharedPreferences保存数据 自己编写的网络请求TaskService队列小框架 工程编码:-GBK
主要介绍了Android应用中使用sharedPreferences类存储数据的方法,文中举了用SharedPreferences保存数据和读取数据的例子,需要的朋友可以参考下
本文实例为大家分享了Android SharedPreferences保存登录数据的具体代码,供大家参考,具体内容如下 目标效果: 程序运行显示一个登陆框,用户名输入admin,密码输入123456会提示登录成功,如果不是则提示不正确...
实现SharedPreferences保存和获取数据