博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决Context.getExternalFilesDir(null)返回null造成java.lang.NullPointerException的问题
阅读量:2240 次
发布时间:2019-05-09

本文共 681 字,大约阅读时间需要 2 分钟。

问题产生:
     今天在写一个日志工具类的时候,想把日志文件放在外存储设备的应用专用文件夹里,即,如:/mnt/sdcard/myPackageName /Android/data/files下.很自然的用起来Context.getExternalFilesDir(null)方法,但是在写好工具 类,测试时报java.lang.NullPointerException,懵了!
      找了好久的解决方法:
  1.  有说是因为   权限问题,把< uses-permission android:name ="android.permission.WRITE_EXTERNAL_STORAGE" />写成了 < uses-permission android:name ="android.permissions.WRITE_EXTERNAL_STORAGE" />,注意是permission多加了个's';
  2. 有的说是Context获取问题,即,把context的初始化放在了类的构造函数里,而不是在OnCreate()里.
以上两种方法,试了,都没解决我的问题.
随后发现了问题:我的测试硬体是RK3188盒子,然后在logcat里发现了Failed to fstatat(/mnt/shell/emulated/0/Android/data/com.xm): Device or resource busy,这才反应过来是外存储设备被锁了,然后断电重启,问题解决,记录一下.

转载于:https://www.cnblogs.com/enyusmile/p/4442654.html

你可能感兴趣的文章
Java生成和操作Excel文件
查看>>
Java的三种代理模式
查看>>
java静态代理与动态代理简单分析
查看>>
JTS Geometry关系判断和分析
查看>>
阿里巴巴十年Java架构师分享,会了这个知识点的人都去BAT了
查看>>
Intellij IDEA 使用技巧一
查看>>
IDEA 护眼色设置 背景行颜色取消等设置
查看>>
idea如何显示git远程与本地的更改对比?
查看>>
Git 分支 - 分支的新建与合并
查看>>
git创建与合并分支
查看>>
23种设计模式介绍以及在Java中的实现
查看>>
如何把本地项目上传到Github
查看>>
Git的使用--如何将本地项目上传到Github
查看>>
zookeeper客户端命令行查看dubbo服务的生产者和消费者
查看>>
intellij idea 相关搜索快捷键
查看>>
oracle查看数据库连接池中最大连接数和当前用户连接数等信息
查看>>
oracle中创建同义词(synonyms)表
查看>>
建立DB-LINK和建立视图
查看>>
普通视图和物化视图的区别(转)
查看>>
物化视图加DBLINK实现数据的同步_20170216
查看>>