Я пытаюсь сохранить изображение панели подписи в файл, но мое приложение, похоже, не создает каталог в storage/emulated/0
, это то, что я использую для создания папки ...
String DIRECTORY = Environment.getExternalStorageDirectory().getPath() + "/Signature/";
String pic_name = new SimpleDateFormat("yyyyMMdd_HHmmss",Locale.getDefault()).format(new Date());
String StoredPath = DIRECTORY + pic_name + ".png";
и это то, что я использую для создания каталога
file = new File(DIRECTORY);
if (!file.exists()) {
file.mkdir();
}
и, наконец, это место, где файл сохраняется ...
public void save(View v, String StoredPath) {
Log.v("log_tag", "Width: " + v.getWidth());
Log.v("log_tag", "Height: " + v.getHeight());
if (bitmap == null) {
bitmap = Bitmap.createBitmap(canvasLL.getWidth(), canvasLL.getHeight(), Bitmap.Config.RGB_565);
}
Canvas canvas = new Canvas(bitmap);
try {
// Output the file
FileOutputStream mFileOutStream = new FileOutputStream(StoredPath);
v.draw(canvas);
// Convert the output file to Image such as .png
bitmap.compress(Bitmap.CompressFormat.PNG, 90, mFileOutStream);
mFileOutStream.flush();
mFileOutStream.close();
} catch (Exception e) {
Log.v("log_tag", e.toString());
}
}
Пожалуйстаобратите внимание, что это не мой собственный код ... (в основном копирование и вставка из) http://demonuts.com/android-capture-signature-using-canvas/
Панель работает нормально, я могу написать на нем, но не будет сохранять :( Когда я отправляюЯ могу вернуть полный каталог и имя файла Storage/emulated/0/Signature/20191101_a time stamp.png
, но он не сохранится на устройстве.
Есть идеи ??