当在cordova中单击应用程序图标启动器时如何恢复应用程序

how to resume the application when click app icon launcher in cordova?

本文关键字:应用程序 何恢复 恢复 cordova 单击 图标 启动 当在      更新时间:2023-09-26

我正在使用cordova phonegap开发移动应用程序。我现在正在android平台上测试,稍后会在ios平台上测试。我的问题是,当我有应用程序在后台运行,我点击这个应用程序的启动器,它被重新初始化。我想要的是只是从启动器图标打开应用程序,并继续从它所在的位置运行。我试图将config.xml中的属性keepRuning设置为true,但它不起作用。

   <preference name="keepRunning" value="true" />
这是config.xml:
     <?xml version="1.0" encoding="utf-8" standalone="no"?>
     <widget xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0" id="com.coolappz.HTML5Application1" version="1.0.0">
        <name>HTML5Application1</name>
        <description>Cordova Application</description>
        <author email="info@com.coolappz" href="http://www.coolappz.com">user</author>
        <access origin="*"/>
        <preference name="fullscreen" value="true"/>
        <preference name="webviewbounce" value="true"/>
        <preference name="keepRunning" value="true" />
    </widget>
编辑:

查看更多详细信息:

我有一个计数器,从 0 开始,每秒递增1。如果我按home,计数器在后台中恢复增量。问题是当我按下应用程序的图标启动器时,计数器从零重置,因为应用程序被重新创建。

我希望这能使观点更清楚。

我的问题:

这可以通过cordova配置或我需要一个插件来处理。
这可能吗?如何实现?由于

更新config.xml以查找缺失的首选项。:

    <preference name="permissions"                value="none"/>
     <!-- Customize your app and platform with the preference element. -->
    <preference name="phonegap-version"           value="3.3.0" />    <!-- all: current version of PhoneGap -->
    <preference name="orientation"                value="default" />        <!-- all: default means both landscape and portrait are enabled -->
    <preference name="target-device"              value="universal" />      <!-- all: possible values handset, tablet, or universal -->
    <preference name="fullscreen"                 value="true" />           <!-- all: hides the status bar at the top of the screen -->
   <preference name="webviewbounce"              value="false" />           <!-- ios: control whether the screen 'bounces' when scrolled beyond the top -->
   <preference name="prerendered-icon"           value="true" />           <!-- ios: if icon is prerendered, iOS will not apply it's gloss to the app's icon on the user's home screen -->
   <preference name="stay-in-webview"            value="false" />          <!-- ios: external links should open in the default browser, 'true' would use the webview the app lives in -->
   <preference name="ios-statusbarstyle"         value="black-opaque" />   <!-- ios: black-translucent will appear black because the PhoneGap webview doesn't go beneath the status bar -->
   <preference name="detect-data-types"          value="true" />           <!-- ios: controls whether data types (such as phone no. and dates) are automatically turned into links by the system -->
   <preference name="exit-on-suspend"            value="false" />          <!-- ios: if set to true, app will terminate when home button is pressed -->
   <preference name="show-splash-screen-spinner" value="true" />           <!-- ios: if set to false, the spinner won't appear on the splash screen during app loading -->
   <preference name="auto-hide-splash-screen"    value="true" />           <!-- ios: if set to false, the splash screen must be hidden using a JavaScript API -->
   <preference name="disable-cursor"             value="false" />          <!-- blackberry: prevents a mouse-icon/cursor from being displayed on the app -->
   <preference name="android-minSdkVersion"      value="10" />              <!-- android: MIN SDK version supported on the target device. MAX version is blank by default. -->
   <preference name="android-installLocation"    value="auto" />           <!-- android: app install location. 'auto' will choose. 'internalOnly' is device memory. 'preferExternal' is SDCard. -->
   <preference name="KeyboardDisplayRequiresUserAction " value="false"/>

我尝试了这个解决方案,它对我有效

添加
     android:launchMode="singleInstance"

活动标签在AndroidManifest.xml,你可以找到它在projectName/platforms/android/AndroidManifest.xml