作者mamaya3 (mamaya)
看板AndroidDev
标题Re: [问题] 如何按下按钮就能结束掉整个程式?
时间Thu Apr 19 12:15:38 2012
※ 引述《gpc (gpc)》之铭言:
: → iincho:送intent叫他关啊... 04/18 00:18
: → lin790505:目前用大绝招的话也只是回到上一个activity 没能够离开 04/18 14:18
: → lin790505:程式 04/18 14:18
: 推 LaPass:那就..... 自己finish吧..... 不过我怎麽记得同一个app是用 04/18 14:20
: → LaPass:同一个Process... 还是我记错 囧" 04/18 14:20
: 如果你system.exit process是会结束没错
: 但结束後 会退回上一个activity stack,如果上一个activity
: 好死不死 又是你自己...
: 那你就会再度出马 又会复活
: 直到上一个activity是别人 才会真的死
http://developer.android.com/reference/android/content/Intent.html#FLAG_
ACTIVITY_CLEAR_TASK
根据这篇的说法 你可以设一个临时性的Activity 然後给他这个flag再开启它
该activity就会变成新的root activity (原stack会全被清光)
最後在此Activity的onCreate写上finish()把自己干掉 应该就可以达成你要的条件
理论上是这样啦 我没试过XD
ps.这flag仅限API 11以上才能用
--------
不过根据你的问题 你要不要先把主选单的activity改成singleTask看看?
AndroidManifest.xml example:
<activity android:name=".activities.A"
android:label="@string/A_title"
android:launchMode="singleTask"/>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 98.119.33.159
※ 编辑: mamaya3 来自: 98.119.33.159 (04/19 12:22)
1F:推 gpc:一般来说api level 超过3的api 就不能算是ANDROID标准API 04/19 20:50
2F:→ gpc:如果你想做android软体市场的话 就不能用超过API LEVEL3的东西 04/19 20:51
3F:→ gpc:这就是ANDROID跟iphone的差别 现在还是有一堆人用可悲的1.5 1. 04/19 20:51
4F:→ gpc:1.5 1.6 就算2.1还是有上百万人 .. 04/19 20:51
5F:推 yauhh:哦,楼上透露这真是好讯息,但是Android开发者...哭哭 04/19 21:18
6F:→ siriusu:@@" 我是觉得1.5 1.6还好 很多就算API支援硬体也不够力吧 04/19 23:53
7F:→ siriusu:如果是设计比较吃硬体的程式譬如游戏的时候 04/19 23:54
8F:推 gpc:android太哭哭啦 光搞那些烂机子相容就有得受了 04/20 02:31