service启动dialog问题

houdayu 2012-03-05 12:20:31
首先我的service 启动一个Dialog:
Intent i = new Intent(this,DialogActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
this.startActivity(i)

然后关闭dialog,再finish DialogActivity

长按home键,点击我应用的图标,为什么会重新启动DialogActivity

可DialogActivity并不是启动的入口啊,请高手解答一下,多谢

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.houyu.activity"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk android:minSdkVersion="7" />
<!-- 添加操作联系人的权限 -->
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />

<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".PhonebookActivity"
android:label="@string/app_name"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ContactsActivity"
android:label="@string/app_name"
android:launchMode="singleTask">
</activity>
<activity android:name=".TestIntent" android:label="@string/app_name"
>

</activity>
<activity android:name=".TestResult" android:label="@string/app_name"></activity>
<activity android:name=".DialogActivity" android:label="@string/app_name"></activity>
<service android:name=".TestService"></service>
</application>
</manifest>
...全文
407 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
houdayu 2012-03-06
  • 打赏
  • 举报
回复
解决了,加了android:excludeFromRecents="true",把任务栏中的DialogActivity隐藏了
zabaglione 2012-03-05
  • 打赏
  • 举报
回复
是不是service本身没有stop掉啊?
比如你用的startService启动的,不是用bindService
这样退出应用程序,service还是运行的??
Marco_Lee 2012-03-05
  • 打赏
  • 举报
回复
你在service的哪个阶段启动的activity?如果是onStartCommand,它会重复调用的
追风筝的孩子 2012-03-05
  • 打赏
  • 举报
回复
按理说,是不可能的。应该是你的service后面再次启动了activity而你不知道。你可以在启动之前打个log看看
Marco_Lee 2012-03-05
  • 打赏
  • 举报
回复
你跟踪一下你的代码,你的main activity ,service,和dialog activity ,应该就能发现什么问题了吧
houdayu 2012-03-05
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 tangyunxiang 的回复:]

因为DialogActivity并没有被系统回收
[/Quote]

我怎么做才能然系统回收
Hunter_Tang 2012-03-05
  • 打赏
  • 举报
回复
因为DialogActivity并没有被系统回收
houdayu 2012-03-05
  • 打赏
  • 举报
回复
跟service有关系吗?是service启动了一个DialogActivity,这个activity finish后应该是在栈中弹出了,为什么长按home键后出现的快捷进入,会直接进到DialogActivity,DialogActivity并不是 <action android:name="android.intent.action.MAIN" />

80,351

社区成员

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

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