重启Android手机代码
重启Android手机代码
作者:[tcconan] 来源:[13COM.NET收集整理] 浏览:[27] 评论:[0]
关键字:
package com.test.reboot;
import java.io.IOException;
import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class RebootAndroid extends Activity implements OnClickListener {
private Button btnReboot;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btnReboot = (Button) findViewById(R.id.btnReboot);
btnReboot.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String cmd = "su -c reboot";
try {
Runtime.getRuntime().exec(cmd);
} catch (IOException e) {
// TODO Auto-generated catch block
new AlertDialog.Builder(this).setTitle("Error").setMessage(
e.getMessage()).setPositiveButton("OK", null).show();
}
}
}
本文来自 13COM.NET, 本文地址:http://www.13com.net/article/article.asp?articleid=1103
android的重启(大部分是转载) 收藏
前段时间有了个android的新项目,在做的过程中碰到一个问题,就是重启设备。
找了很多资料一直都不能正确的重启设备,直到看到这篇文章:http://topic.csdn.net/u/20100423/15/34a5ca3d-df13-4056-8e62-55f6c4c5e412.html
结合这篇文章我是这样做到重启的:
1.在AndroidManifest.xml中添加权限:android:sharedUserId="android.uid.system"。
2.在调用的地方如下:(和文章中提到的是一样的,下面还会有提到文章中讲的其它方法)
view plaincopy to clipboardprint?
Log.d(tag, "reboot");
Intent reboot = new Intent(Intent.ACTION_REBOOT);
reboot.putExtra("nowait", 1);
reboot.putExtra("interval", 1);
reboot.putExtra("window", 0);
sendBroadcast(reboot);
Log.d(tag, "reboot");
Intent reboot = new Intent(Intent.ACTION_REBOOT);
reboot.putExtra("nowait", 1);
reboot.putExtra("interval", 1);
reboot.putExtra("window", 0);
sendBroadcast(reboot);
在文章中有提到很多的方法其中之一wiki14写到:(这方法我没有试,有兴趣的可以去尝试下,也告诉我结果:))
view plaincopy to clipboardprint?
//重启代码位于frameworks/base/core/jni/android_os_Power.cpp,里面有
static void android_os_Power_shutdown(JNIEnv *env, jobject clazz)
{/*关机*/
sync();
#ifdef HAVE_ANDROID_OS
reboot(RB_POWER_OFF);
#endif
}
static void android_os_Power_reboot(JNIEnv *env, jobject clazz, jstring reason)
{/*重启*/
sync();
#ifdef HAVE_ANDROID_OS
if (reason == NULL) {
reboot(RB_AUTOBOOT);
} else {
const char *chars = env->GetStringUTFChars(reason, NULL);
__reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2,
LINUX_REBOOT_CMD_RESTART2, (char*) chars);
env->ReleaseStringUTFChars(reason, chars); // In case it fails.
}
jniThrowIOException(env, errno);
#endif
}
//重启代码位于frameworks/base/core/jni/android_os_Power.cpp,里面有
static void android_os_Power_shutdown(JNIEnv *env, jobject clazz)
{/*关机*/
sync();
#ifdef HAVE_ANDROID_OS
reboot(RB_POWER_OFF);
#endif
}
static void android_os_Power_reboot(JNIEnv *env, jobject clazz, jstring reason)
{/*重启*/
sync();
#ifdef HAVE_ANDROID_OS
if (reason == NULL) {
reboot(RB_AUTOBOOT);
} else {
const char *chars = env->GetStringUTFChars(reason, NULL);
__reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2,
LINUX_REBOOT_CMD_RESTART2, (char*) chars);
env->ReleaseStringUTFChars(reason, chars); // In case it fails.
}
jniThrowIOException(env, errno);
#endif
}
上面那段代码记得编译时需在Android.mk中添加这条语句:
LOCAL_CERTIFICATE := platform
文章中的另一种方法是gz_boy写到的:
view plaincopy to clipboardprint?
//关机:
//In frameworks/base/services/java/com/android/server/BatteryService.java
Intent intent = new Intent(Intent.ACTION_REQUEST_SHUTDOWN);
intent.putExtra(Intent.EXTRA_KEY_CONFIRM, false);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
mContext.startActivity(intent);
//重启:
Intent i = new Intent(Intent.ACTION_REBOOT);
i.putExtra("nowait", 1);
i.putExtra("interval", 1);
i.putExtra("window", 0);
sendBroadcast(i);
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/fjhyy/archive/2010/06/03/5644296.aspx
重启Android手机代码相关推荐
- mtk android手机 代码问题,MTK用户必备 Android手机也能系统恢复
很多PC用户会在新装系统.驱动和常用软件之后进行Ghost备份,一旦系统异常直接恢复即可.实际上,Android手机也有类似的整套系统备份方法,让手机随时原地满血复活. 全局性的系统备份 可能有同学会 ...
- python自动化脚本--自动重启android手机
思路:通过adb reboot命令来控制android手机自动重启 #!/usr/bin/env python # -*- coding: utf-8 -*- import os import tim ...
- 如何重启Android手机
下面这段代码执行的原理就是发送重启的广播给系统,系统接受广播之后重启. Intent intent = new Intent(Intent.ACTION_REBOOT); intent.putExtr ...
- android手机 代码下载,android手机NFC 示例源码下载
手机NFC测试软件 资源下载此资源下载价格为2D币,请先登录 资源文件列表 TestNFC/.DS_Store , 6148 TestNFC/._.DS_Store , 4096 TestNFC/.c ...
- Android 手机重启相关内容
极力推荐Android 开发大总结文章:欢迎收藏 程序员Android 力荐 ,Android 开发者需要的必备技能 本篇文章主要介绍 Android 开发中的部分知识点,通过阅读本篇文章,您将收获以 ...
- Android 手机重启解决方案
本篇文章主要介绍 Android 开发中的部分知识点,通过阅读本篇文章,您将收获以下内容: 1.MTK 平台AEE 搜集重启问题介绍 欢迎关注微信公众号:程序员Android 微信公众号:Progra ...
- Android 重启手机系统(手机root后可用)定时重启Android系统源码(亲测可用)
定时重启Android系统源码,点击下面的GitHub链接哈 github源码:点击进入github查看 1.manifest中添加权限如下:[手机未root,运行报错,安装不上] 2.执行下面代码段 ...
- 使用Java让android手机自动执行重复重启
使用Java让android手机自动执行重复重启 public static void main(String[] args)throws IOException,Exception { for(in ...
- android确认密码代码,Android手机卫士之确认密码对话框
本文接着实现"确认密码"功能,也即是用户以前设置过密码,现在只需要输入确认密码 布局文件和<Android 手机卫士--设置密码对话框>中的布局基本类似,所有copy一 ...
最新文章
- VSLAM~提取特征后求旋转矩阵
- 弹球游戏python代码含记分模式_python编写弹球游戏的实现代码
- js字符串替换_浅析Vue的生命周期以及JS异步
- 【Python 】绘制惊艳的桑基图
- 决赛评审招募 | 学生创意能有多不羁?快来网易看决赛!
- AcWing 499. 聪明的质监员
- 屏幕取色工具ColorCat
- 各种不同服务器301重定向设置代码大全
- Java实现万年历【升级版】
- 【放马过来---谈禅修打坐】
- halcon 灰度投影
- Python深度学习-第一章、什么是深度学习
- 通过Java访问数据库---JDBC
- 饱和气压与温度的关系_饱和蒸汽温度与压力关系
- 杂记「5.1·站在百年变革的风口浪尖」
- 小白自学C语言的准备方向(推荐)
- 泰文,越南等字符串存数据库变成问号,解决办法。
- UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position 2: illegal multibyte sequence
- 商城mysql设计_设计简单的商城数据库
- 微信公众账号后台怎么解除小程序_微信小程序解除绑定 微信小程序怎么授权...