我已经写了一个简单的代码
if (context != null)
{
File mydir = context.getDir("abc",0);
}
据我所知,我可以传递任何随机字符串作为第一个参数。这将是创建的目录的名称。此外,此代码已包含在null检查中,因此上下文不能为null。
但这给了NullPointerException
11-10 09:43:44.839: E/AndroidRuntime(11441): FATAL EXCEPTION: DOWNLOAD_THREAD
11-10 09:43:44.839: E/AndroidRuntime(11441): Process: com.samsung.samsunggearapps, PID: 11441
11-10 09:43:44.839: E/AndroidRuntime(11441): java.lang.NullPointerException
11-10 09:43:44.839: E/AndroidRuntime(11441): at android.content.ContextWrapper.getDir(ContextWrapper.java:257)
编辑:我尝试使用getApplicationContext();。即使这样也是空的。
11-10 11:31:17.919: E/AndroidRuntime(21038): java.lang.NullPointerException
11-10 11:31:17.919: E/AndroidRuntime(21038): at android.content.ContextWrapper.getApplicationContext(ContextWrapper.java:114)
发布于 2014-11-10 12:31:18
我想你不能这么做。必须指定where
(第一个参数)和how
(第二个参数):
File mydir = context.getDir(Environment.DIRECTORY_PICTURES, Context.MODE_PRIVATE);
发布于 2014-11-10 12:51:59
getDir()使您能够在内部存储器中创建任何文件或目录,根据您创建的模式,其他应用程序也可以访问这些文件或目录。
File dir = ctx.getDir("abc", Context.MODE_PRIVATE);
https://stackoverflow.com/questions/26836773
复制相似问题