xamarin怎样获取android外卡路径
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了xamarin怎样获取android外卡路径相关的知识,希望对你有一定的参考价值。
参考技术Axamarin怎样获取android外卡路径
一部分手机将eMMC存储挂载到 /mnt/external_sd 、/mnt/sdcard2 等节点,而将外置的SD卡挂载到 Environment.getExternalStorageDirectory()这个结点。
此时,调用Environment.getExternalStorageDirectory(),则返回外置的SD的路径。
android 怎样动态的获取sd卡路径
链接电脑USB调试情况下,在电脑上有新的磁盘显示,一个SD的,一个手机的,打开SD的就可以找各文件夹路径
Android怎样获取外部存储器路径
读写sdcard上的文件
其中读写步骤按如下进行:
1、调用Environment的getExternalStorageState()方法判断手机上是否插了sd卡,且应用程序具有读写SD卡的权限,如下代码将返回true
Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)
2、调用Environment.getExternalStorageDirectory()方法来获取外部存储器,也就是SD卡的目录,或者使用"/mnt/sdcard/"目录
3、使用IO流操作SD卡上的文件
注意点:手机应该已插入SD卡,对于模拟器而言,可通过mksdcard命令来创建虚拟存储卡
必须在AndroidManifest.xml上配置读写SD卡的权限
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
我怎样才能获得外部SD卡路径为Android 4.0 +
1. 我想你需要这个外部SD卡:
new File("/mnt/external_sd/")
或
new File("/mnt/extSdCard/")
你的情况......
在更换Environment.getExternalStorageDirectory()您的作品,应在MNT目录优先和工作在那里检查什么..
你键入选择哪个SD卡
File storageDir = new File("/mnt/");
if(storageDir.isDirectory())
String[] dirList = storageDir.list();
TODO some type of selecton method?
怎样获取class路径
- import java.io.File;
public class FileTest
public static void main(String[] args) throws Exception
System.out.println(Thread.currentThread().getContextClassLoader()
.getResource(""));
System.out.println(FileTest.class.getClassLoader().getResource(""));
System.out.println(ClassLoader.getSystemResource(""));
System.out.println(FileTest.class.getResource(""));
System.out.println(FileTest.class.getResource("/"));
Class文件所在路径
System.out.println(new File("/").getAbsolutePath());
System.out.println(System.getProperty("user.dir"));
System.out.println(System.getProperty("file.encoding"));
android 怎么获取相册路径
android手机4.2版本之前是一个方法,大于4.2版本又是一个方法。
注意:现在手机市场android版本2015面上半年平均4.4,现在是平均5.0了。
before
你百度一下,都能查到,很简单.
after
private void startPickPhotoActivity()
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.setType("image/*"); Or \'image/ jpeg \'
startActivityForResult(intent, RESULT_PICK_PHOTO_NORMAL);
获得图片返回的路径
@Override
protected void onActivityResult(int requestCode, int resultCode,
Intent data)
if (requestCode == RESULT_PICK_PHOTO_NORMAL)
if (resultCode == RESULT_OK && data != null)
选中图片路径
mFileName = MainActivity.getPath(getApplicationContext(),
data.getData());
if ("".equals(mFileName))
return;
Intent intent = new Intent(this, EditActivity.class);
intent.putExtra("pathName", mFileName);
startActivity(intent);
@TargetApi(Build.VERSION_CODES.KITKAT)
public static String getPath(final Context context, final Uri uri)
final boolean isKitKat = Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT;
DocumentProvider
if (isKitKat && DocumentsContract.isDocumentUri(context, uri))
ExternalStorageProvider
if (UriUtils.isExternalStorageDocument(uri))
final String docId = DocumentsContract.getDocumentId(uri);
final String[] split = docId.split(":");
final String type = split[0];
if ("primary".equalsIgnoreCase(type))
return Environment.getExternalStorageDirectory() + "/"
+ split[1];
DownloadsProvider
else if (UriUtils.isDownloadsDocument(uri))
final String id = DocumentsContract.getDocumentId(uri);
final Uri contentUri = ContentUris.withAppendedId(
Uri.parse("content:downloads/public_downloads"),
Long.valueOf(id));
return UriUtils.getDataColumn(context, contentUri, null, null);
MediaProvider
else if (UriUtils.isMediaDocument(uri))
final String docId = DocumentsContract.getDocumentId(uri);
final String[] split = docId.split(":");
final String type = split[0];
Uri contentUri = null;
if ("image".equals(type))
contentUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
else if ("video".equals(type))
contentUri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI;
else if ("audio".equals(type))
contentUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
final String selection = MediaColumns._ID + "=?";
final String[] selectionArgs = new String[] split[1] ;
return UriUtils.getDataColumn(context, contentUri, selection,
selectionArgs);
MediaStore (and general)
else if ("content".equalsIgnoreCase(uri.getScheme()))
Return the remote address
if (UriUtils.isGooglePhotosUri(uri))
return uri.getLastPathSegment();
return UriUtils.getDataColumn(context, uri, null, null);
File
else if ("file".equalsIgnoreCase(uri.getScheme()))
return uri.getPath();
return null;
如何获取android sdcard路径
Environment.getExternalStorageDirectory()
android怎么获取U盘路径
用Re管理器进入/mnt/目录一个一个找
android怎么获取分区路径
我们可以在adb中使用df 来查看分区情况。
1、跨分区不能用 MV命令来拷贝。但是可以用CP命令。如PWD,当前目录为:/data/local/tmp 。
此目录下有个busybox和1.txt文件。则利用CP命令拷贝如下:./busybox cp1.txt /system.
2、Android的用户组有 System, root, shell
3、怎么样才能操作分区。
分区操作是需要权限的。一般来说System分区的权限限制得比较严,Data分区限制比较严,用户可以操作的目录有local,app目录。比如/data/local/tmp.
data分区常用目录:app , system , data ,local,misc 其中system,local可以进入并使用ls等命令。data,app可以进入,但不能用ls命令。
data/data目录:存放的是所有APK程序数据的目录,每个APK对就一个自己的Data目录,就是在data/data/目录下,会产生一个跟Package一样的目录。如有一个APK,它的包名叫.test.hello则,在data/data/目录下会有一个.test.hello的目录,这个APK只能操作此目录,不能操作其它APK的目录.这个在LINUX下叫做用户进程只能操作自己的进程目录.
data/app目录:用户安装的APK放在这里。我们如果把APK放入这个文件夹下面的话,就算安装好了。这就叫静默安装。不用管APK文件里面的lib目录下的库文件,系统会自动帮我们放入调用库的。
data/system目录下面有packages.xml ,packages.list,appwidgets.xml, 等等一些记录手机安装的软件,Widget等信息。
data/misc目录:保存WIFI帐号,VPN设置信息等。如保存了一个WIFI连接帐号,则此目录下的WIFI目录下面可以查看到。
system分区常用目录: app , lib, xbin, bin , media,framework.
system/app目录:存放系统自带的APK。没有测试过是否将APK放入到System/app目录下,也是静默安装APK。?
system/lib目录:存放APK程序用到的库文件。
system/bin目录和system/xbin目录:存放的是shell命令。
system/framework目录:启用Android系统所用到框架,如一些jar文件。
4 Android下面的目录都是有权限的,要操作目录都需要有此权限才能操作,如果没有,则使用chomd777来修改.如果是分区根目录,如/data分区, /system分区.都没有权限,则需要重新挂载. 使用 mount -oremount XX
Python argv采取外卡路径
我用doc1/*.png
作为第一个参数运行我的脚本,但它被转换为doc1/image1.png
。
我怎样才能让Python看到确切的参数?
img_list = []
print sys.argv[1]
x = sys.argv[1]
img_list = [img for img in glob.glob(x)]
在大多数Linux shell(bash
,sh
,fish
,...)上,星号由shell处理。将*
转换为文件列表这一事实已在shell级别完成。
如果你写:
python file.py doc/*.png
shell本身会将doc/*.png
转换为"doc/1.png" "doc/2.png"
(所以它在.png
目录中找到的doc
文件列表。
您应该使用引号来传递星号,例如:
python file.py 'doc/*.png'
标准Windows shell不对文件名执行通配符。
以上是关于xamarin怎样获取android外卡路径的主要内容,如果未能解决你的问题,请参考以下文章
为什么我不能注册我的Android设备? xam.pushnotification
如何从 Uri xamarin android 获取实际路径