xiaxiaoming_xmc
Summer_xmc
采纳率25%
2015-12-04 04:50 阅读 2.0k

Android 手机拍照sd卡不存在的问题

1

1.今天老板说用户反应拍照时没有提示sd卡提示sd不存在,我们的项目里就是把照片放入sd的,如果sd卡不存在就提示的。哪位大神帮解决一下呗(存内置存储卡但我不会这种呀,网上搜又没有的),
2.项目的登录号使用SharedPreference写入本地的,默认是在data—data—包名—share目录下的 是以.xml保存的,是清除不了的,但是不知道用户怎么把它清楚了,老板让保存在一个指定目录下的.txt里,不会呀
哪位大神给指条明路,小弟感激不尽……

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    wu_zf1234 wu_zf1234 2015-12-04 08:28

    private boolean ExistSDCard() {

    if (android.os.Environment.getExternalStorageState().equals(

    android.os.Environment.MEDIA_MOUNTED)) {

    return true;

    } else

    return false;

    }

    楼上的代码已经解决SD卡的状态!

    要想把数据保存在自定义的目录中,可以利用IO流操作!

    public class CreateFiles {

        String filenameTemp =Environment.getRootDirectory()+ "/hhaudio" + ".txt";    
    
        //创建文件夹及文件    
        public void CreateText() throws IOException {    
            File file = new File(filenameTemp);    
            if (!file.exists()) {    
                try {    
                    //按照指定的路径创建文件夹    
                    file.mkdirs();    
                } catch (Exception e) {    
                    // TODO: handle exception    
                }    
            }    
            File dir = new File(filenameTemp);    
            if (!dir.exists()) {    
                  try {    
                      //在指定的文件夹中创建文件    
                      dir.createNewFile();    
                } catch (Exception e) {    
                }    
            }    
    
        }    
    
        //向已创建的文件中写入数据    
        public void print(String str) {    
            FileWriter fw = null;    
            BufferedWriter bw = null;    
            String datetime = "";    
            try {    
                SimpleDateFormat tempDate = new SimpleDateFormat("yyyy-MM-dd" + " "    
                        + "hh:mm:ss");    
                datetime = tempDate.format(new java.util.Date()).toString();    
                fw = new FileWriter(filenameTemp, true);//    
                // 创建FileWriter对象,用来写入字符流    
                bw = new BufferedWriter(fw); // 将缓冲对文件的输出    
                String myreadline = datetime + "[]" + str;    
    
                bw.write(myreadline + "\n"); // 写入文件    
                bw.newLine();    
                bw.flush(); // 刷新该流的缓冲    
                bw.close();    
                fw.close();    
            } catch (IOException e) {    
                // TODO Auto-generated catch block    
                e.printStackTrace();    
                try {    
                    bw.close();    
                    fw.close();    
                } catch (IOException e1) {    
                    // TODO Auto-generated catch block    
                }    
            }    
        }    
    }
    
    /////记得导包,,,,,,
    
    点赞 评论 复制链接分享
  • bdmh bdmh 2015-12-04 04:52

    检测sd卡是否存在

     private boolean ExistSDCard() {  
      if (android.os.Environment.getExternalStorageState().equals(  
        android.os.Environment.MEDIA_MOUNTED)) {  
       return true;  
      } else  
       return false;  
     }  
    
    点赞 评论 复制链接分享
  • Meditator_hkx Meditator_hkx 2015-12-04 05:02

相关推荐