Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/194.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Phonegap 3.3和minSdkVersion=8变为minSdkVersion=10_Android_Cordova_Phonegap Build - Fatal编程技术网

Android Phonegap 3.3和minSdkVersion=8变为minSdkVersion=10

Android Phonegap 3.3和minSdkVersion=8变为minSdkVersion=10,android,cordova,phonegap-build,Android,Cordova,Phonegap Build,我在www/config.xml中将minSdkVersion设置为8: <preference name="android-minSdkVersion" value="8" /> <preference name="android-installLocation" value="auto" /> 当我运行“phonegap local build android”时,会生成以下文件: find /Users/alain/Documents/projects/pg3

我在www/config.xml中将minSdkVersion设置为8:

<preference name="android-minSdkVersion" value="8" />
<preference name="android-installLocation" value="auto" />

当我运行“phonegap local build android”时,会生成以下文件:

find /Users/alain/Documents/projects/pg33_3/platforms/android -type d \( -name RCS -o -name CVS -o -name .svn -o -name SCCS \) -prune -o -type f \! -name \*\~ \! -name \*\,v \! -name s.\* \! -name .\#\*  -print0 | xargs -0  grep -n  -e minSdkVersion  /dev/null
/Users/alain/Documents/projects/pg33_3/platforms/android/AndroidManifest.xml:13:    <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19" />
/Users/alain/Documents/projects/pg33_3/platforms/android/assets/www/config.xml:26:    <preference name="android-minSdkVersion" value="8" />
/Users/alain/Documents/projects/pg33_3/platforms/android/bin/AndroidManifest.xml:13:    <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19" />/Users/alain/Documents/projects/pg33_3/platforms/android/CordovaLib/AndroidManifest.xml:22:       <uses-sdk android:minSdkVersion="8" />
/Users/alain/Documents/projects/pg33_3/platforms/android/CordovaLib/bin/AndroidManifest.xml:22:    <uses-sdk android:minSdkVersion="8" />
/Users/alain/Documents/projects/pg33_3/platforms/android/res/xml/config.xml:53:    <preference name="android-minSdkVersion" value="8" />
find/Users/alain/Documents/projects/pg33_3/platforms/android-type d\(-name RCS-o-name CVS-o-name.svn-o-name SCCS\)-prune-o-type f\-名称\*\~\-名字\*\,v\-姓名s.\*\-名称。\\*-print0 | xargs-0 grep-n-e minSdkVersion/dev/null
/Users/alain/Documents/projects/pg33_3/platforms/android/AndroidManifest.xml:13:
/Users/alain/Documents/projects/pg33_3/platforms/android/assets/www/config.xml:26:
/Users/alain/Documents/projects/pg33_3/platforms/android/bin/AndroidManifest.xml:13:/Users/alain/Documents/projects/pg33_3/platforms/android/CordovaLib/AndroidManifest.xml:22:
/Users/alain/Documents/projects/pg33_3/platforms/android/CordovaLib/bin/AndroidManifest.xml:22:
/Users/alain/Documents/projects/pg33_3/platforms/android/res/xml/config.xml:53:
那么为什么在AndroidManifest.xml和bin/AndroidManifest.xml中突然变成minSdkVersion=10呢

这是我的config.xml文件:

<?xml version='1.0' encoding='utf-8'?>
<widget id="it.myapp.MyApp" version="1.5.0" xmlns="http://www.w3.org/ns/widgets" xmlns:gap="http://phonegap.com/ns/1.0">
<name>MyApp</name>
<description>
    My App
</description>
<author email="contact@myapp.it" href="http://myapp.it">
    MyApp Team
</author>
<feature name="http://api.phonegap.com/1.0/device" />

<preference name="permissions" value="none" />
<preference name="orientation" value="portrait" />
<preference name="target-device" value="universal" />
<preference name="fullscreen" value="true" />
<preference name="webviewbounce" value="true" />
<preference name="prerendered-icon" value="true" />
<preference name="stay-in-webview" value="false" />
<preference name="ios-statusbarstyle" value="black-opaque" />
<preference name="detect-data-types" value="true" />
<preference name="exit-on-suspend" value="false" />
<preference name="show-splash-screen-spinner" value="true" />
<preference name="auto-hide-splash-screen" value="false" />
<preference name="AutoHideSplashScreen" value="false" />
<preference name="disable-cursor" value="false" />
<preference name="android-minSdkVersion" value="8" />
<preference name="android-installLocation" value="auto" />
<icon src="icon.png" />
<icon gap:density="ldpi" gap:platform="android" src="res/icon/android/icon-36-ldpi.png" />
<icon gap:density="mdpi" gap:platform="android" src="res/icon/android/icon-48-mdpi.png" />
<icon gap:density="hdpi" gap:platform="android" src="res/icon/android/icon-72-hdpi.png" />
<icon gap:density="xhdpi" gap:platform="android" src="res/icon/android/icon-96-xhdpi.png" />
<icon gap:platform="blackberry" src="res/icon/blackberry/icon-80.png" />
<icon gap:platform="blackberry" gap:state="hover" src="res/icon/blackberry/icon-80.png" />
<icon gap:platform="ios" height="57" src="res/icon/ios/icon-57.png" width="57" />
<icon gap:platform="ios" height="72" src="res/icon/ios/icon-72.png" width="72" />
<icon gap:platform="ios" height="114" src="res/icon/ios/icon-57-2x.png" width="114" />
<icon gap:platform="ios" height="144" src="res/icon/ios/icon-72-2x.png" width="144" />
<icon gap:platform="webos" src="res/icon/webos/icon-64.png" />
<icon gap:platform="winphone" src="res/icon/windows-phone/icon-48.png" />
<icon gap:platform="winphone" gap:role="background" src="res/icon/windows-phone/icon-173.png" />
<gap:splash gap:density="ldpi" gap:platform="android" src="res/screen/android/screen-ldpi-portrait.png" />
<gap:splash gap:density="mdpi" gap:platform="android" src="res/screen/android/screen-mdpi-portrait.png" />
<gap:splash gap:density="hdpi" gap:platform="android" src="res/screen/android/screen-hdpi-portrait.png" />
<gap:splash gap:density="xhdpi" gap:platform="android" src="res/screen/android/screen-xhdpi-portrait.png" />
<gap:splash gap:platform="blackberry" src="res/screen/blackberry/screen-225.png" />
<gap:splash gap:platform="ios" height="480" src="res/screen/ios/screen-iphone-portrait.png" width="320" />
<gap:splash gap:platform="ios" height="960" src="res/screen/ios/screen-iphone-portrait-2x.png" width="640" />
<gap:splash gap:platform="ios" height="1024" src="res/screen/ios/screen-ipad-portrait.png" width="768" />
<gap:splash gap:platform="ios" height="768" src="res/screen/ios/screen-ipad-landscape.png" width="1024" />
<gap:splash gap:platform="winphone" src="res/screen/windows-phone/screen-portrait.jpg" />

<gap:plugin name="org.apache.cordova.splashscreen" />

<access origin="http://127.0.0.1*" />
</widget>

MyApp
我的应用程序
MyApp团队

不幸的是,config.xml中的许多设置似乎仅由Phonegap构建服务使用,并且在添加本地平台时被忽略

我也遇到了同样的问题,我找到的唯一解决方案是创建AndroidManifest.xml的副本并对其进行更改——然后在
.cordova/hooks
文件夹中添加一个钩子来复制自定义文件并覆盖cordova提供的默认文件


从长远来看,您可能需要这样做,因为您希望自定义phonegap config.xml文件中未显示的Android设置。

您可以编写一些代码进行调整,并将其放入挂钩中(如其他答案所述)

下面是一个Ruby代码片段,它应该会让您走上正确的道路(当然也可以使用JS或其他语言)


您能给我看一下您的config.xml文件吗?我可以进一步提供帮助吗?谢谢。我已经把它添加到我的问题中了。
file_path = root.join("platforms/android/AndroidManifest.xml")
doc = Nokogiri::XML(open(file_path))

# set correct platform requirements
node = doc.css('uses-sdk').first
node['android:minSdkVersion'] = '16'

doc.write_to(File.open(file_path, 'w'))