安卓开发中所遇到的一些问题及解决办法,不断更新中

① Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE

     [字面意思:安装失败,不够贮存]

     解决办法:在配置文件根节点中加上这句话: android:installLocation="preferExternal"

  android:installLocation可以设置为"auto"、"internalOnly"、"preferExternal"三个值中的任何一个.

auto:
程序可能被安装在外部存储介质上(例如:SD Card),但是默认会被安装到手机内存中.当手机内存为空时,程序将被安装到外部存储介质上.当程序安装到手机上后,用户可以决定把程序放在外部储介质还是内存中.
internalOnly:
默认值.当设置为该值时,程序只能被安装在内存中,如果内存为空,则程序将不能成功安装.
preferExternal:
将程序安装在外部存储介质上,但是系统不保证程序一定会被安装到外部存储介质上.当外部存储介质不可以或空时,程序将被安装到内存中.程序使用了forward-locking机制时也将被安装到内存中,因为外部存储不支持此机制.程序安装后,用户可以自由切换程序应该在外部还是内部存储介质上.

②给一个类及一个方法加注释,像这样

/*

*@data:2014

*/

preference-->java-->CodeTemplates-->Comments-->Types-->添加自己想要的

③文件下载存储的一些问题

现在市面上主要有两类手机,一种就是无扩展sd卡,比如4G内存,16存储。当然也可以扩展。一种就是没有外部存储的,需插入sd卡的。

我在做一个文件下载就遇到这样的问题。在三星s5上运行没有任何问题,在小米上运行也没有任何问题(有外部sdcard)。但是换到安卓原生4.3就出现问题了。我用的代码是这样的

public static final String SD_CARD_DIR=Environment.getExternalStorageDirectory().getAbsolutePath()+"/sip";

这段代码在4.3中有问题。

解决办法:public static final String SD_CARD_DIR="/storage/sdcard0/sip"即可,这段代码在以上说的几个手机上都能运行,可以完美解决。

当然还有一种情况就是无外部存储的。文件要往内部存储写。这个可能要涉及到root权限问题。

 String files=getApplicationContext().getFilesDir().getParent()+File.separator + ".dir";
  File localFile = new File(files);
  localFile.mkdirs();
  String str="chmod " +files+" "+"777"+" && busybox chmod "+files+" " +"777" ;
  try{
   Runtime.getRuntime().exec(str);
  }catch(IOException e){
   Log.d("DirMake",e.getLocalizedMessage());
  }

这是摘自别人的一段代码,没有运用,应该可行,本人想,现在手机无外部存储的还玩个蛋啊。

你可能感兴趣的:(安卓)