用getCacheDir()的时候报空指针异常

23333333hhh 2020-11-21 06:46:07
在java文件里写这句话的时候
private String path = getCacheDir().getPath();
说这句话抛出一个空指针异常
getCacheDir()方法不是获取Cache目录的吗
有大佬能给我讲一下吗...
...全文
27040 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jing丶無雙 2020-11-25
  • 打赏
  • 举报
回复

public class MainActivity extends Activity {
	private String path;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		Context context = this;
		path = context.getCacheDir().getPath();// 1
		path = this.getCacheDir().getPath();// 2
		path = getCacheDir().getPath();// 3
		// 在Activity中1、2、3代码等效
	}
}
不要把getCacheDir()写给全局变量直接赋值 因为这时候MainActivity中尚未完成Context实例的生成,而getCacheDir()方法需要一个Context实例 你可以尝试,如果你在非Activity 类中是无法直接调用getCacheDir()方法的

80,472

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧