Привет, У меня есть галерея в моем приложении, которая показывает изображение в изображении, когда вы нажимаете на миниатюру. Я настраиваю прослушиватель длинного клика для диалогового окна предупреждения, в котором есть две кнопки для установки в качестве обоев и один для совместного использования. У меня есть намерение долевого участия, и кэш получения чертежа несколько работает. Он работает в эмуляторе, но не на моем телефоне. Я использовал многие примеры на этом сайте, чтобы добиться этого, но он вообще не работает. он сохраняет силу закрытия приложения на моем телефоне. любая помощь приветствуется.Ошибка файловой системы Android только для чтения
alertDialog.setButton2("Share",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
imgView.setDrawingCacheEnabled(true);
Bitmap b = imgView.getDrawingCache();
File sdCard = Environment.getExternalStorageDirectory();
File file = new File(sdCard.getAbsolutePath() + "image.jpg");
try {
file.createNewFile();
OutputStream fos = null;
fos = new FileOutputStream(file);
b.compress(CompressFormat.JPEG, 100, fos);
fos.flush();
fos.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Log.d("Save Example", "Image saved.");
Intent shareIntent = new Intent(Intent.ACTION_SEND);
Uri phototUri = Uri.parse("file:///sdcard/image.jpg");
shareIntent.setData(phototUri);
shareIntent.setType("image/jpeg");
shareIntent.putExtra(Intent.EXTRA_STREAM, phototUri);
startActivity(Intent.createChooser(shareIntent, "Share Via"));
}
});
alertDialog.show();
return true;
}
});
Update: это, кажется, проблема с
b.compress(CompressFormat.JPEG, 95, fos);
он продолжает говорить, что нулевой указатель.
Выводит нулевой указатель на самом деле является ошибкой read_only. Так как на самом деле он не записывает файл, я получаю файловую систему только для чтения ioexception. Почему он это делает?
Прежде чем вы начнете писать, вам нужно просмотреть разрешения каталога. Вы должны понимать основные разрешения файловой системы из UNIX для выполнения этого анализа. – JoxTraex
Вы используете разрешение записи в файле манифеста ?? –
да, у меня есть write.external.storage в манифесте – Pestilence