手机如何挂载sd卡sd卡被挂载了,怎么办

Android&获取内外置存储卡方法
以前的Android(4.1之前的版本)中,SDcard跟路径通过“/sdcard”或者“/mnt/sdcard”来表示存储卡,而在Jelly
Bean系统中修改为了“/storage/sdcard0”,以后可能还会有多个SDcard的情况。
目前为了保持和之前代码的兼容,sdcard路径做了link映射。
为了使您的代码更加健壮并且能够兼容以后的Android版本和新的设备,请通过Environment.getExternalStorageDirectory().getPath()来获取sdcard路径,
如果您需要往sdcard中保存特定类型的内容,可以考虑使用Environment.getExternalStoragePublicDirectory(String
type)函数,该函数可以返回特定类型的目录,目前支持如下类型:
DIRECTORY_ALARMS //警报的铃声
DIRECTORY_DCIM //相机拍摄的图片和视频保存的位置
DIRECTORY_DOWNLOADS //下载文件保存的位置
DIRECTORY_MOVIES //电影保存的位置, 比如 通过google play下载的电影
DIRECTORY_MUSIC //音乐保存的位置
DIRECTORY_NOTIFICATIONS //通知音保存的位置
DIRECTORY_PICTURES //下载的图片保存的位置
DIRECTORY_PODCASTS //用于保存podcast(博客)的音频文件
DIRECTORY_RINGTONES //保存铃声的位置
如果您的应用需要下载以上类型的文件,则可以放到上面对应的目录中去来帮助用户查找,比如最常用的就是下载文件了。如果您开发了一个浏览器,在下载文件的时候把文件下载到Download目录则方便用户以后查找该文件,当然如果你希望用户需要通过启动您的程序来查看他们下载的文件,您也可以不这么做
在使用这些目录保存文件的时候,需要注意一点:其他程序也有可能在使用这些目录,在保存文件前,注意判断下文件是否已经存在,不要覆盖了用户之前的数据。
Android4.1之后Android增加了多存储卡的支持,一般手机会存在内置存储卡和外置存储卡,也可能有多个外置存储卡。如何获取存储卡路径呢?
特别是各种android设备的存储器路径,是不一样的,比如T卡路径,可能是/mnt/sdcard、/mnt/extsd、/mnt/external_sd
或者/mnt/sdcard2。有时内置存储器的路径也可能是/mnt/sdcard,而host
usb存储器的路径也是各种各样的。
下面方法是通过反射,调用StorageManager的隐藏接口getVolumePaths(),实现获取存储器列表。
package ckl.storage.
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.M
import android.app.A
import android.os.storage.StorageM
public class StorageList {
private Activity mA
private StorageManager mStorageM
private Method mMethodGetP
public StorageList(Activity activity) {
mActivity =
if (mActivity != null) {
mStorageManager = (StorageManager)mActivity
.getSystemService(Activity.STORAGE_SERVICE);
mMethodGetPaths = mStorageManager.getClass()
.getMethod("getVolumePaths");
} catch (NoSuchMethodException e) {
e.printStackTrace();
public String[] getVolumePaths() {
String[] paths =
paths = (String[]) mMethodGetPaths.invoke(mStorageManager);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
在android2.3中,判断内置SD卡是否挂载:
if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))
//为true的话,内置sd卡存在
判断外置SD卡是否挂载:
if(Environment.getStorageState(Environment.STORAGE_PATH_SD2).equals(Environment.MEDIA_MOUNTED))
//为true的话,外置sd卡存在
顺带描述怎么取得sdcard的空间大小,
File sdcardDir = Environment.getExternalStorageDirectory();
StatFs sf = new StatFs(sdcardDir.getPath());
//sdcardDir.getPath())值为/mnt/sdcard,想取外置sd卡大小的话,直接代入/mnt/sdcard2
long blockSize = sf.getBlockSize(); //总大小
long blockCount = sf.getBlockCount();
long availCount = sf.getAvailableBlocks(); //有效大小
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。当前位置:&>&&>&正文
安卓4.4.0以上系统游戏数据包挂载至sd卡的方法
来源:游民星空[整理]
作者:原鬼
编辑:原鬼
浏览:loading
  一般来说,对于手机游戏的数据包,安卓系统默认都会安装在“/内置储存/Android/obb或data”目录下,假如玩家的手机内存较小,这无疑会影响游戏体验。但如果你的手机已经Root,玩家可以在使用“外置SD卡补丁”和“外置卡文件夹挂载(FolderMount)”这两个软件后,将游戏数据包放到外置SD卡上,以达到节省手机内存的目的(注:此方法只针对于安卓系统版本4.4.0以上的用户)。
  以移动《六发左轮》这款游戏的数据包为例,总结下步骤:
  1.要确保手机已Root,并下载“外置SD卡补丁”和“外置卡文件夹挂载”这两个软件。
  2.打开“外置SD卡补丁”对手机进行修复,打开外置卡文件夹挂载,会看到下图画面。
  如上图所示,玩家可看到3个可编辑选项:名称、源和目标文件夹。名称:玩家可随意书写,目的是方便区分游戏名称。源:手机内置储存的游戏数据包路径。目标文件夹:玩家自定义的游戏数据包路径。
  3.点击“源”,找到《六发左轮》的数据包。
友情提示:支持键盘左右键“← →”翻页
相关新闻:
没有任何记录
新游排行榜
第三人称射击
第一人称射击
第三人称射击
动作角色扮演htc g21不能读取和无法挂载sd卡的问题
之前在论坛里看到有人说自己的htc g21手机没有办法读取sd卡,也就是不能挂载sd卡,这样的话手机就不能读取sd卡里的文件包了,尤其是在刷机的时候也读取不了rom包就不方便了,下面来说一下怎么解决吧:
1:手机先下载adb工具包,,把这个软件下载下来放到电脑桌面上,解压出来,先不要动,下面会用到
2:然后手机以fastboot方式连接电脑:具体方法是:手机先关机,接着然后按音量下键 + 开关键,再选到fastboot,接着再按关机键就进入了fastboot,连接成功后会有fastboot USB的字样,连接好手机就在电脑上操作了
3:然后在刚才下载好的adb工具包里找到cmd.exe,然后双击运行,在出现的窗口里输入:fastboot oem enableqxdm 0 回车
4:如果出现OK字样,那么恭喜你,你的内存卡可以读的出来了
5:重新再启动手机就可以了
其它相关文章:
点击查看更多
(本文来源) /a/jingpinshouji/567.html

我要回帖

更多关于 sd卡未挂载怎么办 的文章

 

随机推荐