我已经使用插件创建了带有Android应用程序的PhoneGap 1.4 /。
我的客户报告说,当他使用“主页”按钮离开应用程序,然后使用应用程序图标重新启动应用程序时,应用程序从一开始就重新启动而不是恢复。然而,当他按下锁定或进入睡眠状态时,应用程序会以预期的方式恢复。
应用程序的初始化过程以这种方式声明:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d("EMOFIDActivity", "onCreatee " + this.getIntent());
super.loadUrl("file:///android_asset/www/index.html");
}
@Override
public void onPause() {
Log.d("EMOFIDActivity", "onPause " + this.getIntent());
super.onPause();
}// On click of home button this method is getting called
@Override
public void onResume() {
Log.d("EMOFIDActivity", "onResume " + this.getIntent());
super.onResume();
} // On click of app icon application is getting relaunched without coming to this function.
我已经包含了三个Android插件并覆盖了onPause()&像这样的onResume()方法。这里也没有调用OnResume()方法。
@Override
public void onPause(boolean multitasking) {
Log.d(TAG, "onPause " + ctx.getIntent());
super.onPause(multitasking);
stopNfc();
}
@Override
public void onResume(boolean multitasking) {
Log.d(TAG, "onResume " + ctx.getIntent());
super.onResume(multitasking);
startNfc();
}
有没有办法解决这个问题,并回到我暂停我的应用程序的状态?这个过程中可能出现什么问题?
答案 0 :(得分:3)
我遇到了同样的问题。当我点击应用程序图标以在后台重新启动已经运行的应用程序时,我的应用程序重新启动。
基本上如果
机器人:launchMode
设置为标准或未设置,然后为应用创建新意图,并且不恢复应用的旧暂停状态。
所以我找到的最佳方法是申请
android:launchMode="singleTask"
AndroidManifest.xml中的- >在里面。
请考虑这个例子:
<activity android:name="Example" android:label="@string/app_name"
android:theme="@android:style/Theme.Black.NoTitleBar" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale"
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>