我正在使用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>
修改 有关详细信息:
我有一个从零开始的计数器,每秒递增1。如果我按回家,计数器将在后台恢复增加。问题是,当我按下应用程序的图标启动器时,计数器将从零重置,因为应用程序已重新创建。
我希望这会使观点更加清晰。
我的问题:
这可以通过cordova配置来处理,或者我需要一个插件来执行此操作 这可能吗?怎么样? 感谢
答案 0 :(得分:0)
更新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"/>
答案 1 :(得分:0)
我尝试了这个解决方案,它对我有用
添加
android:launchMode="singleInstance"
对于AndroidManifest.xml中的活动标记,您可以在 projectName / platforms / android / AndroidManifest.xml 中找到它。
就是这样。