Я использую react-native-camera
, чтобы сделать снимок и отправить путь к исходному коду Android для принтера
Но будет показано исключение:
E/BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: file:/data/user/0/com.greeter/cache/Camera/ed59cf72-c664-4674-bec4-46fcfb46070b.jpg (No such file or directory)
Вот мой React Native код, отправляющий значение на собственный Android, я могу использовать путь и успешно показать <Image style={styles.photo} source={{ uri: path }} />
.
import { NativeModules } from 'react-native';
const Android = NativeModules.AndroidModule;
printWithAndroid = (path) => {
console.log('print the path is:', path);
Android.printWithAndroid(path);
}
распечатать путь: file:/data/user/0/com.greeter/cache/Camera/ed59cf72-c664-4674-bec4-46fcfb46070b.jpg
Но когда яотправить путь к исходному коду Android не работает.
@ReactMethod
public void printWithAndroid(String path) {
String srcPath = path;
myPrinter.startCommunication();
Log.d("externalStorageDir", externalStorageDir);
// printFile need String
PrinterStatus status = myPrinter.printFile(path); // Here is the exception
myPrinter.endCommunication();
}
Почему путь работает на стороне Android ReactNative, но показывает исключение на нативном Android?
Если я пытаюсь использовать среду
String externalStorageDir = Environment.getExternalStorageDirectory().toString();
путь: /storage/emulated/0
Если я использую /storage/emulated/0/ed59cf72-c664-4674-bec4-46fcfb46070b.jpg
, он тоже не работает.
Как мне исправить проблему с путем?Заранее спасибо.