2011-11-19 101 views

回答

3

要允許外部存儲設備,並保持比API級別低8版本兼容:

  1. 在元素中包含值爲「auto」或「preferExternal」的android:installLocation屬性。
  2. 讓您的android:minSdkVersion屬性保持原樣(小於「8」),並確保您的應用程序代碼只使用與該級別兼容的API。
  3. 爲了編譯您的應用程序,請將您的構建目標更改爲API Level 8。這是必要的,因爲較舊的Android庫不理解android:installLocation屬性,並且在您的應用程序出現時不會編譯它。

當您的應用程序安裝在API級別低於8的設備上時,android:installLocation屬性將被忽略,應用程序將安裝在內部存儲上。

對於在App Install Location

+0

未找到屬性的installLocation ... 當我嘗試寫在1.5版本的manifest資源配置文件 – user1028269

+0

它與API 8級。所以沒有機會開始資源標識符。 – user370305

+0

在市場上有很多應用程序在API級別8下,他們被允許安裝在SD卡上?他們怎麼做? (我有2.3.3版本設備) – user1028269

1

更看我想你應該檢查這個blog其中明確提到,這個功能是不是suporrt低於API級別8

+0

謝謝,但你可以告訴我任何例子?我無法理解 – user1028269

0

與API 8級開始,你可以允許外部存儲(例如,在設備的SD卡)安裝了應用程序。這是一個可選的功能,您可以使用android:installLocation清單屬性爲您的應用程序聲明。如果您未聲明此屬性,則您的應用程序將僅安裝在內部存儲器上,並且不能移動到外部存儲器。

要允許系統在外部存儲器上安裝應用程序,請修改清單文件以在元素中包含android:installLocation屬性,其值爲「preferExternal」或「auto」。例如:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="your package name" 
android:versionCode="1" 
android:versionName="1.0" 
android:installLocation="preferExternal"> 

<uses-sdk 
    android:minSdkVersion="8" 
    android:targetSdkVersion="19" /> 

<application> 
... 
</application>