处理SD存储/兼容性

时间:2012-02-05 13:09:26

标签: android storage compatibility

在我的一个游戏中,我会尝试通过拨打getExternalFilesDir来访问SD卡。

如您所知 - Android 2.1设备(7级api)无法使用此方法。由于admob(需要等级13 api),我无法切换回较旧的API。

因此我也不能使用像getExternalStorageDir这样的旧函数 - 因为这在api 13级上根本不可用。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

要访问SD卡,请使用Environment.getExternalStorageDirectory()获取SD卡的路径。此方法适用于所有api级别,因为它自API级别1以来已包含在Android中。

您可以通过执行此操作获取应用程序文件的存储目录。

String externalFileDirectory =  
          Environment.getExternalStorageDirectory().toString();
externalFileDirectory += "/Android/data/your.application.package/.files/"

请注意,卸载您的应用程序时,externalFileDirectory中的文件会自动删除。

Admob help在“要求”部分中说,Admob需要Android 1.5(API 3)或更高版本。因此,您可以将<uses-sdk android:minSdkVersion="api_level" /> minsdkversion设置为低于13,并且可以使用getExternalFilesDir。因此,您可以使用getExternalFilesDir方法。

Fory Admob您只需要将default.properties或project.properties中的目标设置为13.在default.properties或project.properties文件中写入target=android-13。您的应用仍将支持您的应用程序的minSdkVersion。