Java 为什么即使我的文件位于正确的位置,我仍会收到filenotfound异常?
下面是我以前工作过的代码。但在我最近格式化了我的手机后,它就不再工作了。请帮我做这个 设置路径的代码为:Java 为什么即使我的文件位于正确的位置,我仍会收到filenotfound异常?,java,android,jakarta-mail,Java,Android,Jakarta Mail,下面是我以前工作过的代码。但在我最近格式化了我的手机后,它就不再工作了。请帮我做这个 设置路径的代码为: path = Environment.getExternalStorageDirectory().getPath() + "/IMG-20190324-WA0000.jpg"; try { m.addAttachment(path); if(m.send()) { Toast.makeText(context, "Email wa
path = Environment.getExternalStorageDirectory().getPath() + "/IMG-20190324-WA0000.jpg";
try {
m.addAttachment(path);
if(m.send()) {
Toast.makeText(context, "Email was sent successfully :)", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(context, "Email was not sent :(", Toast.LENGTH_LONG).show();
}
} catch(Exception e) {
//Toast.makeText(context, "There was a problem sending the email.", Toast.LENGTH_LONG).show();
Log.e("MailApp", "Could not send email", e);
}
我得到以下错误:
E/MailApp: Could not send email
javax.mail.MessagingException: IOException while sending message;
nested exception is:
java.io.FileNotFoundException: /storage/emulated/0/IMG-20190324-WA0000.jpg: open failed: EACCES (Permission denied)
我的清单权限:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
文件像以前一样位于准确的位置,那么为什么代码不能读取它
我所要做的就是进入设备设置->应用->我的应用->打开存储权限。@Pklumpp帮了我的忙,这是值得称赞的注意,屏幕截图是针对内部存储的,但您正在请求外部存储的权限。只是为了确保,您也授予了权限吗?@Pklumpp我该怎么做?@Lubji您可以进入设备设置、应用程序、选择应用程序并允许权限。我假设您没有从应用程序内部请求权限atm@Pklumpp我爱你,兄弟……它成功了;非常感谢我能帮助你,顺便说一句,欢迎来到stackoverflow!