Java 定位映像时上载到存储器时出现问题
这个科迪Java 定位映像时上载到存储器时出现问题,java,android,Java,Android,这个科迪 ImageZipper(Objects.requireNonNull(getContext())) .setQuality(50) .setMaxWidth(300) .setMaxHeight(300) .compressToFile(file); D/errror1010:/document/image:2147:open失败:enoint(没有这样的文件或目录)事实上,这不是一个有效的文件系统路径。这是您在某处获得
ImageZipper(Objects.requireNonNull(getContext()))
.setQuality(50)
.setMaxWidth(300)
.setMaxHeight(300)
.compressToFile(file);
D/errror1010:/document/image:2147:open失败:enoint(没有这样的文件或目录)
事实上,这不是一个有效的文件系统路径。这是您在某处获得的内容方案的最后一部分。您应该使用内容方案。直接获取的uri。E/BitmapFactory:无法解码流:java.io.FileNotFoundException:/document/image:2147:
???您在哪里使用BitmapFactory?上传到存储时出现问题
您能告诉我您要上传什么以及上传到什么类型的存储吗?你的话题太模糊了。而且你没有告诉我你的问题是什么。所以我们不得不猜测。
if (filePath!=null){
try {
File file = new File(filePath.getPath());
File imageZipperFile=new ImageZipper(Objects.requireNonNull(getContext()))
.setQuality(50)
.setMaxWidth(300)
.setMaxHeight(300)
.compressToFile(file);
Uri IndividualImage = Uri.fromFile(imageZipperFile);
StorageReference ImageFolder = FirebaseStorage.getInstance().getReference().child("imageUser");
String itme=String.valueOf(System.currentTimeMillis());
final StorageReference ImageName = ImageFolder.child("AD" + itme);
ImageName.putFile(IndividualImage).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
ImageName.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
String url = String.valueOf(uri);
if (addUser.getSection_us().isEmpty()){
addUser.setSection_us(addUser.getPhoto());
}
addUser.setPhoto(url);
SaveUser();
progressDialog.dismiss();
}
});
}
});
} catch (Exception e) {
Log.d("errror1010", Objects.requireNonNull(e.getMessage()));
progressDialog.dismiss();
Toast.makeText(getContext(), e.getMessage(), Toast.LENGTH_SHORT).show();
}
} else {
progressDialog.dismiss();
Toast.makeText(getContext(), "error", Toast.LENGTH_SHORT).show();
}
D/errror1010: /document/image:2147: open failed: ENOENT (No such file or directory)
E/BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /document/image:2147: open failed: ENOENT (No such file or directory) Unable to decode stream: java.io.FileNotFoundException: /document/image:2147: open failed: ENOENT (No such file or directory)
StorageReference ImageFolder = FirebaseStorage.getInstance().getReference().child("imageUser");
String itme=String.valueOf(System.currentTimeMillis());
final StorageReference ImageName = ImageFolder.child("AD" + itme);
ImageName.putFile(filePath).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
ImageName.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
String url = String.valueOf(uri);
if (addUser.getSection_us().isEmpty()){
addUser.setSection_us(addUser.getPhoto());
}
addUser.setPhoto(url);
SaveUser();
progressDialog.dismiss();
}
});
}
});
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
android {
compileSdkVersion 29
buildToolsVersion "29.0.2"
defaultConfig {
minSdkVersion 21
targetSdkVersion 29
versionCode 18
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}