Я добавил намерение электронной почты к приложению Android с кодом, чтобы добавить локальный файл в качестве привязки.Добавление приложения с использованием намерения электронной почты Android
Но когда кнопку я нажимаю «по электронной почте данные», чтобы открыть намерение я получить приложение, аварии и войти кошка показывает вывод следующий, http://hastebin.com/idejavunam.avrasm, ошибка исключения нулевого указателя находится на этой линии:
case R.id.emailBtn:
поэтому я думал, что это проблема с файлом uri, но не могу понять, почему, поскольку файл существует в файловой системе устройства.
Кто-нибудь знает, как я могу отладить эту проблему? Возможно, я неправильно передал путь к файлу?
Это тот процесс, который я выполняю для реализации решения.
код из метода, который создает CSV файл:
String baseDir = android.os.Environment.getExternalStorageDirectory().getAbsolutePath();
String fileName = "AnalysisData.csv";
//this filePath is used in email code and converted to Uri.
filePath = baseDir + File.separator + fileName;
File f = new File(filePath);
И это код, в котором называется электронная умысел, с путем к файлу, преобразованный в Uri для крепления prposes:
case R.id.emailBtn: {
Toast.makeText(this, "email clicked", Toast.LENGTH_SHORT).show();
Uri.fromFile(new File(filePath));
Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(
"mailto","[email protected]", null));
emailIntent.putExtra(Intent.EXTRA_SUBJECT, "EXTRA_SUBJECT");
emailIntent.putExtra(Intent.EXTRA_STREAM, filePath);
startActivity(Intent.createChooser(emailIntent, "Send email..."));
break;
любезно найти обновление, чтобы найти ошибку, а также изменить код, чтобы соответствовать предоставленный код. –
@BrianJ, так как трудно получить поток из вышеуказанных фрагментов кода, вы можете поделиться своим полным файлом java? –
Я обновил свой ответ, проверив обновление –