Chinaunix首页 | 论坛 | 博客
  • 博客访问: 76139
  • 博文数量: 33
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 220
  • 用 户 组: 普通用户
  • 注册时间: 2014-07-15 22:22
文章分类

全部博文(33)

文章存档

2016年(3)

2015年(23)

2014年(7)

我的朋友

分类: Android平台

2015-04-14 10:26:41

    1.Android4.0以上有了内/外置存储卡的区分,eclipse配置文件中不存在这种权限。
     其实 外置卡不是不能读取而是路径更改了
   原来2.3和之前的版本 外置卡的路径都是/sdcard/external_sd
   而现在的4.0其实路径已经改成/emmc
   所以造成识别不出外置SD卡的假象
   我想到了用映射文件夹的办法来解决
   可以在终端模拟器里输入
   用到的dos命令是
   su
   mount -o bind /emmc /sdcard/external_sd
   su是获取超级用户权限
下面 就是映射文件夹的命令了
    还有用脚本语言的解决办法,但是我现在还没有进行验证,不会现在这种先将就着用http://blog.sina.com.cn/s/blog_550d54290101ejym.html

   2. 顺便在这里说一下在Android4.0以上不允许在主线程中进行Internet连接下载,则可以通过以下几种方法解决:
   1) 解决办法:在OnCreat()方法中加入

if (Build.VERSION.SDK_INT >= 11) {

       StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectDiskReads  ().detectDiskWrites().detectNetwork().penaltyLog().build());

       StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectLeakedSqlLiteObjects().detectLeakedClosableObjects().penaltyLog().penaltyDeath().build()); }
适用于下载的文件很小。

     2)  开启另一线程具体怎么做我现在还不太懂,但应该还可以将文件下载写入另一线程中。

启动一个新线程的代码:
new Thread(){

@Override

public void run() {

Dosomething();

handler.sendEmptyMessage(0);

}

}.start();

 3)异步线程AsyncTask

  参考自:
如果用dos调试Android虚拟机的命令:
adb shell 进入
cd  打开文件夹
ls 打开文件
ls -l  查看文件详细信息
rm XXX.exe 删除当前目录下的文件(Android虚拟机文件)
rm -r (文件夹名) 删除当前目录下的文件夹

阅读(854) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~