我有一项服务S
,它会在启动完成后立即启动。我有一个带有一个Activity的应用程序,它在应用程序启动时绑定到服务S
。
现在我已经为某个事件注册了一个广播接收器,这样如果事件发生我应该启动相同的Activity。我不想创建同一个Activity的另一个实例,我想重用Activity但应该调用ActivityonCreate()
的onRestart()
方法。
我怎样才能做到这一点?
我有一项服务S
,它会在启动完成后立即启动。我有一个带有一个Activity的应用程序,它在应用程序启动时绑定到服务S
。
现在我已经为某个事件注册了一个广播接收器,这样如果事件发生我应该启动相同的Activity。我不想创建同一个Activity的另一个实例,我想重用Activity但应该调用ActivityonCreate()
的onRestart()
方法。
我怎样才能做到这一点?
我不是 100% 肯定你的问题,但我们开始吧。您可以尝试在 mainactivity 中使用静态方法并从您的服务中调用它。
在您的主要活动中:
@Override
public void onCreate() {
super.onCreate();
superAwesomeMethod();
public static void superAwesomeMethod() {
//stuff you want called on onCreate
然后在您的服务中:
//event listener capture
YourActivityName.superAwesomeMethod();
如果你想了解意图去
http://blog.akquinet.de/2010/04/15/android-activites-and-tasks-series-intent-flags/
它非常清晰,并且随附的演示应用程序非常有用。
试试AndroidManifest.xml
这个
<activity android:launchMode="singleTop">
为您的主要活动