android ndk程序获取外置SD沙盒目录的方法讲解
android的App只能访问外置SD指定的目录,一般是:
$外置SD目录 + "/Android/data/" + $apk包名
1 获取外置SD目录的方法:
调用getenv(const char *name)方法,通过环境变量"SECONDARY_STORAGE"得到,若没有这个变量,则通过"EXTERNAL_STORAGE"得到。
如果上面方法还不行,枚举/mnt目录下的所有目录。
2 获取apk包名的方法:
pid_t getpid()得到进程标识;再通过读 /proc/$pid/cmdline 文件内容得到进程名字,即是包名
3 拼凑沙盒目录:
$外置SD目录 + "/Android/data/" + $apk包名 + “/cache"
以上这篇android ndk程序获取外置SD沙盒目录的方法讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Android NDK开发之:配置环境的详解
一.Windows:Windows下的开发环境需要安装以下软件:Java JDK Apache ANT Build SystemAndroid SDKCygwinAndroid NDKEclipse IDE1.安装Java JDKhttp://www.oracle.com/technetwork/java/javase/downloads/index.html配置环境变量:新建一个JAVA_HOME键,值设为JDK的安装目录.打开PATH键,在末尾增加 ;%JAVA_HOME%\bin检测:ja
-
Android ndk获取手机内部存储卡的根目录方法
如下所示: jclass envcls = env->FindClass("android/os/Environment"); //获得类引用 if (envcls == nullptr) return 0; //找到对应的类,该类是静态的返回值是File jmethodID id = env->GetStaticMethodID(envcls, "getExternalStorageDirectory", "()Ljava/io/File;&
-
android ndk程序获取外置SD沙盒目录的方法讲解
android的App只能访问外置SD指定的目录,一般是: $外置SD目录 + "/Android/data/" + $apk包名 1 获取外置SD目录的方法: 调用getenv(const char *name)方法,通过环境变量"SECONDARY_STORAGE"得到,若没有这个变量,则通过"EXTERNAL_STORAGE"得到. 如果上面方法还不行,枚举/mnt目录下的所有目录. 2 获取apk包名的方法: pid_t getpid()
-
Android N获取外置SD卡或挂载U盘路径的方法
在Android N上并没有提供直接的方法获取外置SD卡或挂载U盘路径,可以通过下面方法获取内置sd卡路径 Environment.getExternalStorageDirectory().getAbsolutePath(); 通过查看getExternalStorageDirectory源码发现,Android只是没有公开的接口获取而已 public static File getExternalStorageDirectory() { throwIfUserRequired(); retu
-
Android 获取内外SD卡路径几种方法总结
Android 获取SD卡路径: 外置sd卡路径,也许很多同学在平时的工作中并不会用到,因为现在很多机型都不支持外置sd卡(这也是Google目标),所以并不用考虑外置sd卡的路径问题.除了开发文件管理类的应用之外,其他应用使用 Enviroment 这个类中的一些静态方法就能满足需要.但也有一些特殊需求需要用到外置sd卡路径,那怎么才能准确获得外置sd卡的路径呢? 方法一 //内置sd卡路径 String sdcardPath = System.getenv("EXTERNAL_STORAGE
-
解决Android 5.1限制外置SD卡写入权限的问题
在Android开发者网站的 "外部存储技术信息"文档中描述道 : WRITE_EXTERNAL_STORAGE只为设备上的主要外部存储授予写权限,应用程序无法将数据写入二级外部存储设备,除非综合权限指定了应用程序的包目录.这目前只影响双存储设备,如果你的设备有内部存储空间,即通常所说的机身存储,那么你的SD卡就是一个二级外部存储设备. 在Android 4.4中,如果你同时使用了机身存储和SD卡, 那么应用程序将无法在SD卡中创建.修改.删除数据.比如,你无法使用酷我音乐盒下载保存M
-
Android数据持久化之读写SD卡中内容的方法详解
本文实例讲述了Android数据持久化之读写SD卡中内容的方法.分享给大家供大家参考,具体如下: 前面文章里讲的那三个方法:openFileOutput .openFileInput 虽然都能通过流对象OutputStream和InputStream可以处理任意文件中的数据,但与 SharedPreferences 一样,只能在手机内存的指定目录下建立文件,因此,在实际的开发使用中有很大的局限性,那么在这一节中,我们来看一个比较高级的方法来实现数据的持久化--读写SD卡上的内容. --读取ass
-
android实现Uri获取真实路径转换成File的方法
本文实例讲述了android实现Uri获取真实路径转换成File的方法.分享给大家供大家参考.具体实现方法如下: Uri uri = data.getData(); String[] proj = { MediaStore.Images.Media.DATA }; Cursor actualimagecursor = managedQuery(uri,proj,null,null,null); int actual_image_column_index = actualimagecursor.g
-
PHP获取当前相对于域名目录的方法
本文实例讲述了PHP获取当前相对于域名目录的方法.分享给大家供大家参考.具体如下: http://127.0.0.1/dev/classd/index.php/download 比如这个地址,我想得到红色区域的地址用于生成站内的链接,名为 baseurl. 用 $_SERVER['SCRIPT_NAME'] 就可以了, $_SERVER['SCRIPT_NAME'] 是当前正在访问的PHP文件的相对路径,只要如下稍作处理: 从$_SERVER['SCRIPT_NAME']中获取目录部分,并且替换
-
Android Studio不能获取远程依赖包的完美解决方法
最近被一个AS的sync问题困扰,在引入远程依赖包的时候,会出现一个sync错误,提示找不到这个类库.然而,并不是所有的工程都会出现这个问题,有的工程引入同样的类库却没有问题. Error:(25, 13) Failed to resolve: com.jakewharton:butterknife:5.1.1 网上查了下(http://stackoverflow.com/questions/20746071/failed-to-build-android-hello-world-applica
-
microlog4android将Android Log日志写到SD卡文件中实现方法
我们在进行Android开发时,经常会有这种体会,由于客户的设备型号各不相同,从而导致出现多种问题,但对于研发人员,因为没有log日志文件,不太容易定位问题的具体位置.所以我们急需一个能将程序日志写到SD卡文件里的工具,类似web的log4j那样.这时microlog4android进入我们的视野,虽然它尚有不足,但也已能满足大部分需求. 使用microlog4android的步骤如下: 1.下载 到http://code.google.com/p/microlog4
-
Android应用程序转到后台并回到前台判断方法
我们知道,当我们按返回或Home键退出应用程序的界面时,应用程序会在后台被挂起.这么设计的好处是,由于应用被系统缓存在内存中,那么在用户打开启动应用时就可以通过调用缓存,快速启动应用.当然,由于当今内存和处理器能力的限制,系统会自动关闭一些进程. 那么我如何判断这个应用程序在前台还是后台,应用从后台回到前台了? 看到一般都是runningProcess或者runningTasks来判断应用在前台还是后台 事实上,Android在SDK 14的时候提供了一个Callback.ActivityLif
随机推荐
- 如何检测用户第一次访问我的网站并显示友好信息?
- 用vbscript得到注册表中是否存在某个值
- Win2003 系统服务器防火墙
- iOS如何获取屏幕宽高、设备型号、系统版本信息
- Java实现一个达达租车系统的步骤详解
- .Net遍历窗体上控件的方法
- 解析使用js判断只能输入数字、字母等验证的方法(总结)
- TSYS中生成静态页时溢出: 'CInt'
- 实时编辑网页网页文字实时编辑,如同TEXTBOX一般
- Javascript循环删除数组中元素的几种方法示例
- assert()函数用法总结(推荐)
- javascript实现3D变换的立体圆圈实例
- 学会批处理
- SQL Server数据汇总五招轻松搞定
- 推荐 21 款优秀的高性能 Node.js 开发框架
- php操作memcache缓存方法分享
- 友盟 微信第三方登录示例
- .net MVC使用IPrincipal进行Form登录即权限验证(3)
- 浅谈python连续赋值可能引发的错误
- php查询内存信息操作示例