Arcgis android - Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
报错:
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
Please check logcat output for more details.
Launch canceled!
(题外话)这是我开始接触Arcgis android写的第一个骗日志,算是入门了,感觉android上玩gis真的很有挑战性,比web上的环境搭建难搞多了.不废话太多了,回归主题.
概述
将'Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE'转为小写(小写我看着比较顺),为'installation error: install_failed_insufficient_storage',从字面上看就知道,这是由于内存不足导致的(我用的是emulator,网上搜了一下,很多人最终解决问题都不唯一.
解决步骤
1,我先是在emulator中的"Menu"->"Manage apps",卸载里面的程序,重新运行,还是一样报错.
2,看看emulator中的内存,很小,于是 在"Android Virtual Device Manager"中,修改Android虚拟设备(Edit Android Virtual Device),增加内存,增大"Internal Storage"和"SD Card"的值,如图:
,
但是还是不行.
3,将项目中的"\AndroidManifest.xml"文件添加 android:installLocation="preferExternal"代码,如下(第4行):
1 <?xml version="1.0" encoding="utf-8"?> 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3 package="juk.demos" 4 android:installLocation="preferExternal" --增加这行代码 5 android:versionCode="1" 6 android:versionName="1.0"> 7 <uses-sdk android:minSdkVersion="19" /> 8 9 10 <uses-permission android:name="android.permission.INTERNET" /> 11 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 12 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 13 <uses-feature android:glEsVersion="0x00020000" android:required="true"/> 14 15 16 <application android:icon="@drawable/ic_launcher" android:label="@string/app_name"> 17 <activity android:name=".TryOfflineActivity" 18 android:label="@string/app_name"> 19 <intent-filter> 20 <action android:name="android.intent.action.MAIN" /> 21 <category android:name="android.intent.category.LAUNCHER" /> 22 </intent-filter> 23 </activity> 24 25 </application> 26 </manifest>
但是还是不行.
4,有网友说用诸如 '-partition-size 512'命令修改模拟器内存,在"Run Configuration"中的"Target"选项卡中的"Emulator launch parameters"组中的"Additional Emulator Command Line Options"想中添加 '-partition-size 512',如图:,
运行还是不行.
5,最后发现将上面第3步中的 'preferExternal'修改为'auto',即可.即:
1 <?xml version="1.0" encoding="utf-8"?> 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3 package="juk.demos" 4 android:installLocation="auto" --增加这行代码 5 android:versionCode="1" 6 android:versionName="1.0"> 7 <uses-sdk android:minSdkVersion="19" /> 8 9 10 <uses-permission android:name="android.permission.INTERNET" /> 11 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 12 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 13 <uses-feature android:glEsVersion="0x00020000" android:required="true"/> 14 15 16 <application android:icon="@drawable/ic_launcher" android:label="@string/app_name"> 17 <activity android:name=".TryOfflineActivity" 18 android:label="@string/app_name"> 19 <intent-filter> 20 <action android:name="android.intent.action.MAIN" /> 21 <category android:name="android.intent.category.LAUNCHER" /> 22 </intent-filter> 23 </activity> 24 25 </application> 26 </manifest>
运行成功.如图(over):