xamarin怎样获取android外卡路径

xamarin怎样获取android外卡路径,第1张

xamarin怎样获取android外卡路径

一部分手机将eMMC存储挂载到 /mnt/external_sd 、/mnt/sdcard2 等节点,而将外置的SD卡挂载到 EnvironmentgetExternalStorageDirectory()这个结点。

此时,调用EnvironmentgetExternalStorageDirectory(),则返回外置的SD的路径。

android 怎样动态的获取sd卡路径

链接电脑USB调试情况下,在电脑上有新的磁盘显示,一个SD的,一个手机的,打开SD的就可以找各文件夹路径

Android怎样获取外部存储器路径

读写sdcard上的文件

其中读写步骤按如下进行:

1、调用Environment的getExternalStorageState()方法判断手机上是否插了sd卡,且应用程序具有读写SD卡的权限,如下代码将返回true

EnvironmentgetExternalStorageState()equals(EnvironmentMEDIA_MOUNTED)

2、调用EnvironmentgetExternalStorageDirectory()方法来获取外部存储器,也就是SD卡的目录,或者使用"/mnt/sdcard/"目录

3、使用IO流 *** 作SD卡上的文件

注意点:手机应该已插入SD卡,对于模拟器而言,可通过mksdcard命令来创建虚拟存储卡

必须在AndroidManifestxml上配置读写SD卡的权限

<uses-permission android:name="androidpermissionMOUNT_UNMOUNT_FILESYSTEMS"/>

<uses-permission android:name="androidpermissionWRITE_EXTERNAL_STORAGE"/>

我怎样才能获得外部SD卡路径为Android 40 +

1 我想你需要这个外部SD卡:

new File("/mnt/external_sd/")

new File("/mnt/extSdCard/")

你的情况

在更换EnvironmentgetExternalStorageDirectory()您的作品,应在MNT目录优先和工作在那里检查什么

你键入选择哪个SD卡

File storageDir = new File("/mnt/");

if(storageDirisDirectory()){

String[] dirList = storageDirlist();

TODO some type of selecton method

}

怎样获取class路径

import javaioFile;

public class FileTest {

public static void main(String[] args) throws Exception {

Systemoutprintln(ThreadcurrentThread()getContextClassLoader()

getResource(""));

Systemoutprintln(FileTestclassgetClassLoader()getResource(""));

Systemoutprintln(ClassLoadergetSystemResource(""));

Systemoutprintln(FileTestclassgetResource(""));

Systemoutprintln(FileTestclassgetResource("/"));

 Class文件所在路径

Systemoutprintln(new File("/")getAbsolutePath());

Systemoutprintln(SystemgetProperty("userdir"));

Systemoutprintln(SystemgetProperty("fileencoding"));

}

}

android 怎么获取相册路径

android手机42版本之前是一个方法,大于42版本又是一个方法。

注意:现在手机市场android版本2015面上半年平均44,现在是平均50了。

before

你百度一下,都能查到,很简单

after

private void startPickPhotoActivity() {

    Intent intent = new Intent(IntentACTION_OPEN_DOCUMENT);

    intentsetType("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 = MainActivitygetPath(getApplicationContext(),

            datagetData());

        if (""equals(mFileName)) {

            return;

        }

        Intent intent = new Intent(this, EditActivityclass);

        intentputExtra("pathName", mFileName);

        startActivity(intent);

        }

    }

    }

    @TargetApi(BuildVERSION_CODESKITKAT)

    public static String getPath(final Context context, final Uri uri) {

    final boolean isKitKat = BuildVERSIONSDK_INT >= BuildVERSION_CODESKITKAT;

     DocumentProvider

    if (isKitKat && DocumentsContractisDocumentUri(context, uri)) {

        ExternalStorageProvider

        if (UriUtilsisExternalStorageDocument(uri)) {

        final String docId = DocumentsContractgetDocumentId(uri);

        final String[] split = docIdsplit(":");

        final String type = split[0];

        if ("primary"equalsIgnoreCase(type)) {

            return EnvironmentgetExternalStorageDirectory() + "/"

                + split[1];

        }

        }

        DownloadsProvider

        else if (UriUtilsisDownloadsDocument(uri)) {

        final String id = DocumentsContractgetDocumentId(uri);

        final Uri contentUri = ContentUriswithAppendedId(

            Uriparse("content:downloads/public_downloads"),

            LongvalueOf(id));

        return UriUtilsgetDataColumn(context, contentUri, null, null);

        }

        MediaProvider

        else if (UriUtilsisMediaDocument(uri)) {

        final String docId = DocumentsContractgetDocumentId(uri);

        final String[] split = docIdsplit(":");

        final String type = split[0];

        Uri contentUri = null;

        if ("image"equals(type)) {

            contentUri = MediaStoreImagesMediaEXTERNAL_CONTENT_URI;

        } else if ("video"equals(type)) {

            contentUri = MediaStoreVideoMediaEXTERNAL_CONTENT_URI;

        } else if ("audio"equals(type)) {

            contentUri = MediaStoreAudioMediaEXTERNAL_CONTENT_URI;

        }

        final String selection = MediaColumns_ID + "=";

        final String[] selectionArgs = new String[] { split[1] };

        return UriUtilsgetDataColumn(context, contentUri, selection,

            selectionArgs);

        }

    }

     MediaStore (and general)

    else if ("content"equalsIgnoreCase(urigetScheme())) {

        Return the remote address

        if (UriUtilsisGooglePhotosUri(uri))

        return urigetLastPathSegment();

        return UriUtilsgetDataColumn(context, uri, null, null);

    }

     File

    else if ("file"equalsIgnoreCase(urigetScheme())) {

        return urigetPath();

    }

    return null;

    }

如何获取android sdcard路径

EnvironmentgetExternalStorageDirectory()

android怎么获取U盘路径

用Re管理器进入/mnt/目录一个一个找

android怎么获取分区路径

我们可以在adb中使用df 来查看分区情况。

1、跨分区不能用 MV命令来拷贝。但是可以用CP命令。如PWD,当前目录为:/data/local/tmp 。

此目录下有个busybox和1txt文件。则利用CP命令拷贝如下:/busybox cp1txt /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,它的包名叫testhello则,在data/data/目录下会有一个testhello的目录,这个APK只能 *** 作此目录,不能 *** 作其它APK的目录这个在LINUX下叫做用户进程只能 *** 作自己的进程目录

data/app目录:用户安装的APK放在这里。我们如果把APK放入这个文件夹下面的话,就算安装好了。这就叫静默安装。不用管APK文件里面的lib目录下的库文件,系统会自动帮我们放入调用库的。

data/system目录下面有packagesxml ,packageslist,appwidgetsxml, 等等一些记录手机安装的软件,Widget等信息。

data/misc目录:保存WIFI帐号,***设置信息等。如保存了一个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

有的程序的文件夹是自动建立在sd卡上的,有的程序是没有文件夹的,程序位于date/app文件夹内,而系统的程序位于system/app文件夹内。

软件安装完成后,就会在date/app目录出现一个apk文件。

这个文件相当于windows下exe安装完成后在c盘生成的安装文件夹里的一样,只不过安卓环境下只是一个apk文件(有的还另外会在sd卡自动建立一个用于该程序存放数据的文件夹)

而windows环境下是一个包含有exe启动文件的文件夹,你不能把apk从那个目录删除,就像你把c盘的某个安装路径文件夹里的exe文件删除一样,你就不能启动该程序了,另外,system/app里放的是系统自带的程序,就像是windows自带的office程序类似。

注意apk文件总是相当于电脑里的setup安装文件,所以你不能把apk文件再在date/app里打开,因为它已经安装完毕了,所以提示是否替换。

扩展资料:

安装帮助

一错误解决

1提示:文件受损

说明:安装程序文件被破坏或者不完整有可能是在程序下载或者解压缩时引起的文件破坏

解决:请确定下载的程序文件完整性网络不好也会损坏下载文件,建议再次下载或解压缩程序再试

2提示:无任何提示,运行无反映

说明:一般是中文文件名的JAR程序出现这种情况

解决:删除掉已经安装的JAR程序,将JAR程序文件名改为全英文之后再试

3提示:手机启动失败,请与零售商联系

说明:一般是某个程序安装失败后重启手机时出现这个提示,也有部分是升级机器时失败导致

解决:如果是某个程序安装失败,那么只需要将存储卡拿出来,然后再次启动机器并将安装错误的程序删除掉即可如果是手机升级后出现,那么就只有重新格机了需要注意的是:一些开机启动并常驻内存的软件是无法通过格式化解决的所以,软格前先需要把这些软件全部关闭或删除

4问题:jar程序安装打不开

说明:特别注意,JAR程序下载后不能改中文名再安装,否则会打不开,只能起英文名和数字!

解决:删除已安装程序,再把安装包重命名为英文或数字重新安装

5问题:打开程序时提示运存或储存空间不足!

说明:正在运行的程序太多或开机太久

解决:可以关闭一些程序或重起手机再打开程序,或查看手机储存是否太小,可以移动一些自己的文件到卡里增加手机空间!

6问题:下载程序分辨率不合适该屏幕

说明:1资源分类出错

2资源本身支持问题

解决:重新设置机型下载

7问题:在运行中提示出错

说明:1资源本身的BUG

2手机平台支持问题

3运行内存不足

解决:可以找一个高版本或重新开机再试试

参考资料:

搜狗百科-软件安装

以上就是关于xamarin怎样获取android外卡路径全部的内容,包括:xamarin怎样获取android外卡路径、安卓系统下安装完apk程序后,具体的文件夹位置在哪里呢、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9715606.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存