android 重启成功,关机不成功

G_B 2010-04-23 03:17:10
大家好,RT。代码实现了android的reboot 功能,但是发现 shutdown 后还是保留在最后一个画面,也就是没正常关机。请大家帮忙看看,谢谢。

reboot:
Intent i= new Intent( Intent.ACTION_REBOOT);
sendBroadcast( i );

shutdown:
Intent i= new Intent( Intent.ACTION_SHUTDOWN);
sendBroadcast( i );

AndroidManifest.xml:
.....
android: sharedUserId="android.uid.system">
....
<uses-permission android: name="android.permission.RECEIVE_BOOT_COMPLETED">

BootReceiver.java:
public class BootReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context,Intent intent){
Intent i=new Intent(Intent.ACTION_RUN);
i.setClass(context, UpdateProgress.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}


...全文
10192 40 打赏 收藏 转发到动态 举报
写回复
用AI写文章
40 条回复
切换为时间正序
请发表友善的回复…
发表回复
yhy115566957 2012-06-20
  • 打赏
  • 举报
回复
mContext.startActivity(intent); 启动哪个关机界面啊?、
yhy115566957 2012-06-05
  • 打赏
  • 举报
回复
怎么放在app文件怎么跟系统源码一起编译啊?
yhy115566957 2012-06-05
  • 打赏
  • 举报
回复
急啊,开发环境好了后,都有系统源码的吗?
系统源码要另外下?
请问你知道windows下怎么弄么?
怎么放在app文件怎么跟系统源码一起编译啊?

floweriswho 2012-05-18
  • 打赏
  • 举报
回复
/**
* Activity Action: Start this activity to request system shutdown.
* The optional boolean extra field {@link #EXTRA_KEY_CONFIRM} can be set to true
* to request confirmation from the user before shutting down.
*
* <p class="note">This is a protected intent that can only be sent
* by the system.
*
* {@hide}
*/
public static final String ACTION_REQUEST_SHUTDOWN = "android.intent.action.ACTION_REQUEST_SHUTDOWN";
/**
floweriswho 2012-05-18
  • 打赏
  • 举报
回复
/**
* Set to true in {@link #ACTION_REQUEST_SHUTDOWN} to request confirmation from the user
* before shutting down.
*
* {@hide}
*/
public static final String EXTRA_KEY_CONFIRM = "android.intent.extra.KEY_CONFIRM";
isyou890 2012-03-13
  • 打赏
  • 举报
回复
Intent.ACTION_RUN 是干吗用的阿 有哪位知道 怎么进入到某一个正在运行服务的相关信息界面??
G_B 2012-02-16
  • 打赏
  • 举报
回复
[Quote=引用 30 楼 gaoxiaoweiandy 的回复:]

成功的人,你说是 和源码一起编译 才能运行,我想问的是,源码是 随便从网上下的,还是说是厂商的?
[/Quote]

你好,当初公司用的是windriver系统,包括驱动在内的乱七八糟的东西都有人在写,所以你懂得,不是从网上下载的。

实际上只是提供大家一个思路,可以通过调用底层的源代码来实现此功能,因为稍微牵涉到一点系统编译的知识,如果只了解过应用的朋友可能比较陌生。

忘记关贴了,印象中我看见的最早的一个关机程序是国外的某个老大写的开源项目,不过需要root权限才能运行,有兴趣可以去搜索下。看了下,国内其实实现这个功能并在线发布的软件已经不少了。
ww32232 2012-01-05
  • 打赏
  • 举报
回复
求可关闭android手机的代码,求可运行demo,qq:395928533。在线等,急求,十分感谢啊。
冉航--小虾米 2011-11-23
  • 打赏
  • 举报
回复
第一步,下载android源码
第二步,编译android源码,SDK.
第三步,在windows下或linux下编写自己的工程。
第四步,在 /out/packages/app/ 下建立自己的工程文件夹,将你自己的工程中的src,res,Admainfest.xml三个,拷贝到第三步建立的工程文件夹。
第五步,忘记了,我现在没在公司。记不清楚命令了。明天再写了。
restarted 2011-11-16
  • 打赏
  • 举报
回复
有好几个代码说法,权限肯定是要有的了,我先记下来,稍后试试,有没有现在统一的确认成功了的,我是在真机上试验。谢谢分享
restarted 2011-11-16
  • 打赏
  • 举报
回复
有好几个代码说法,权限肯定是要有的了,我先记下来,稍后试试,有没有现在统一的确认成功了的,我是在真机上试验。谢谢分享
冉航--小虾米 2011-11-16
  • 打赏
  • 举报
回复
成功的人,你说是 和源码一起编译 才能运行,我想问的是,源码是 随便从网上下的,还是说是厂商的?
aidecanlan88 2011-11-05
  • 打赏
  • 举报
回复
我的报错了,为什么加进哪个权限虚拟机运行不起来,而且没有Intent.ACTION_REQUEST_SHUTDOWN这个,
伊茨米可 2011-10-18
  • 打赏
  • 举报
回复
你用的虚拟机否?
虚拟机是关机不了的。。。
另外你是在什么平台下编译的?win?

[Quote=引用 25 楼 ynwqqq 的回复:]

很高兴最近也是调这个问题,开始我把此代码加到 LUANCHER2 里,编译过了,担是 用不了关机这个功能 一点它,程序就报错了。楼主不知道还在关注这个问题不。我有个问题。长按关机键,用的代码就是ShutdownThread.Shutdown 。我在用时,发现点了确定,它就出现一个关机画面,担是就是关不了机,不晓得是为撒。请教呀!
[/Quote]
ynwqqq 2011-10-18
  • 打赏
  • 举报
回复
很高兴最近也是调这个问题,开始我把此代码加到 LUANCHER2 里,编译过了,担是 用不了关机这个功能 一点它,程序就报错了。楼主不知道还在关注这个问题不。我有个问题。长按关机键,用的代码就是ShutdownThread.Shutdown 。我在用时,发现点了确定,它就出现一个关机画面,担是就是关不了机,不晓得是为撒。请教呀!
sww064 2011-10-11
  • 打赏
  • 举报
回复
重启:
Intent i = new Intent(Intent.ACTION_REBOOT);
i.putExtra("nowait", 1);
i.putExtra("interval", 1);
i.putExtra("window", 0);
sendBroadcast(i);
请问上述代码中三组键值的意思是什么。。。
伊茨米可 2011-10-09
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 etzmico 的回复:]
引用 8 楼 gz_boy 的回复:

不好意思,贴漏了
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
...
android:sharedUserId="android.uid.system"
>


<uses-permission android:name="android.perm……
[/Quote]


嗯呢,我也是,用linux系统mm出的,成功了,在windows下用eclipse直接生成apk就不行。
我搜索了,都是用linux弄的,请问你知道windows下怎么弄么……就是直接能用eclipse相关的……
G_B 2011-10-09
  • 打赏
  • 举报
回复
to Etzmico:
是使用eclipse编译然后console端显示"INSTALL_FAILED_SHARED_USER_INCOMPATIBLE"吗?
这里牵涉到签名的知识,
search下“android:sharedUserId="android.uid.system,应该会有所收获的
我之前是通过扔进源码里编译解决的,你也可以尝试使用其他的方式解决这个问题
伊茨米可 2011-10-08
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 gz_boy 的回复:]

不好意思,贴漏了
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
...
android:sharedUserId="android.uid.system"
>


<uses-permission android:name="android.permissio……
[/Quote]

我不知道我的理解有没有问题
我把他们直接放在了onCreat里,应该就是关机或者重新启动了吧。
权限也加了。
但是为什么我程序连运行都运行不了
加了这句“android:sharedUserId="android.uid.system"”以后就不行了。。在console中提示INSTALL_FAILED_SHARED_USER_INCOMPATIBLE,请问是什么原因。。。
G_B 2011-10-07
  • 打赏
  • 举报
回复
[Quote=引用 19 楼 waterstarsx 的回复:]

引用 16 楼 gz_boy 的回复:

To lujl1988:
放在app里面Intent.ACTION_REQUEST_SHUTDOWN压根就找不到,求解!

你好,帖子中的“找不到”是指IDE报错吗,不知道是不是这个意思?
过的太久了都不太记的了,建议你可以尝试先查下reference doc,看能不能找到,找不到;然后可以去找找源码,有,也就是说不是公开的。So,IDE会报……
[/Quote]
问题1:当时的实验环境是在譬如2.1源码下编译,生成的文件成功在2.1的环境下运行
问题2:app怎么在系统源码环境下编译?
11年,即使中文资料,网上应该很多,建议类似如此的关键词“android app 在源码中编译”google下。好运!
加载更多回复(17)

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧