不要为同一个应用程序打开两次

时间:2012-10-24 16:00:05

标签: android

我制作了一个制作流媒体广播的应用。如何防止这种情况,第二次点击图标打开应用程序两次?

3 个答案:

答案 0 :(得分:3)

这是一个很好的建议:

  

*   How to launch activity only once when app is opened for first time?

     

我通常做的是添加对特定共享的检查   主Activity中的首选项:如果缺少该共享首选项   然后启动单次运行Activity,否则继续使用main   活动。当您启动单次运行时,创建共享   首选项,以便下次跳过

此解决方案与您提出的问题略有不同,但应该准确地为您提供您正在寻找的结果。

另一种可能性是在你的androidmanifest.xml中使用android:launchMode = "singleInstance"

... IMHO

答案 1 :(得分:0)

要播放音乐,您应该使用服务,以便即使您的应用关闭也可以继续使用。此时,您的活动仅用于与服务进行通信。当您启动应用程序时,只需检查服务是否正在运行。

答案 2 :(得分:0)

通常这不应该发生,如果您的活动已在运行,系统会在用户重新启动时将其启动。如果您的活动是由新任务中的其他应用程序/活动启动的,或者出于其他原因,可能会使用intent来创建已经运行的活动的新实例,请查看清单中的singleInstance或singleTask模式:

http://developer.android.com/guide/topics/manifest/activity-element.html#lmode

对于流媒体,您应该使用服务(最好是绑定服务)来包含您的媒体播放器,以便它可以继续在后台播放,然后该活动只是连接到它的服务的客户端,并且该服务保留单个实例。这已经在这里描述:

Set Aac+player app as service in background