Firebase将PDF上载到存储
我正试图上传我从应用程序创建的PDF。但我不知道为什么,但我认为这条路并不好。我可以在我的存储器上看到PDF,但我有以下错误:Firebase将PDF上载到存储,firebase,pdf,storage,Firebase,Pdf,Storage,我正试图上传我从应用程序创建的PDF。但我不知道为什么,但我认为这条路并不好。我可以在我的存储器上看到PDF,但我有以下错误: E/UploadTask:找不到要上载的文件:Dunkerque_Dunkerquedate:2401976.pdf E/StorageException:StorageException已发生。发生未知错误,请检查HTTP结果代码和服务器响应的内部异常。代码:-13000 HttpResult:0 E/StorageException:No content provi
E/UploadTask:找不到要上载的文件:Dunkerque_Dunkerquedate:2401976.pdf E/StorageException:StorageException已发生。发生未知错误,请检查HTTP结果代码和服务器响应的内部异常。代码:-13000 HttpResult:0 E/StorageException:No content provider:Dunkerque_Dunkerquedate:2401976.pdf
我首先从我创建的createPDF类创建了一个PDF,我认为它工作得很好,因为我可以在我的存储中看到PDF。下面是我如何创建它的: '公共类CreatePDF{然后在我的活动中,我尝试将文件上载到存储器:static String DIRECTORY = Environment.getExternalStorageDirectory().getPath() + "/DigitSign/"; public static void createPdf(String fileName, SharedPreferences loadPreparatif, SharedPreferences loadEquipeA, SharedPreferences loadEquipeB , SharedPreferences loadSet1, SharedPreferences loadSet2, SharedPreferences loadSet3, SharedPreferences loadSet4, SharedPreferences loadSet5, SharedPreferences loadResultat, SharedPreferences loadApprobation, Context context){ File file = new File(DIRECTORY); if (!file.exists()) { file.mkdir(); } //document Document document = new Document(PageSize.A4, 0f, 0f, 10f, 0f); try { String path = Environment.getExternalStorageDirectory().toString() + "/" + fileName + ".pdf"; PdfWriter.getInstance(document, new FileOutputStream(path)); } catch (DocumentException e) { e.printStackTrace(); } catch (FileNotFoundException e) { e.printStackTrace(); }'
final String filename= nomEquipeA + "_" + nomEquipeB +"_Date:" + date + ".pdf" ; CreatePDF.createPdf(filename, loadPreparatif, loadEquipeA, loadEquipeB, loadSet1, loadSet2, loadSet3, loadSet4, loadSet5, loadResultat, loadApprobation, Recapitulatif.this); File filelocation = new File(Environment.getExternalStorageDirectory().getAbsolutePath(), filename); Uri path = Uri.fromFile(filelocation); storageRef.child("Match").child(filename).putFile(path) .addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() { @Override public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) { String url = taskSnapshot.getMetadata().getReference().getDownloadUrl().toString(); FirebaseDatabase database= FirebaseDatabase.getInstance(); DatabaseReference reference = database.getReference(); reference.child("Match Url").child(filename).setValue(url); } }).addOnFailureListener(new OnFailureListener() { @Override public void onFailure(@NonNull Exception e) { Toast.makeText(Recapitulatif.this,"Erreur lors du téléchargement",Toast.LENGTH_LONG); } }).addOnProgressListener(new OnProgressListener<UploadTask.TaskSnapshot>() { @Override public void onProgress(@NonNull UploadTask.TaskSnapshot snapshot) { } });
先谢谢你final String filename=nomEquipeA+“”+nomEquipeB+“Date:“+Date+”.pdf”; CreatePDF.CreatePDF(文件名、loadPreparatif、loadEquipeA、loadEquipeB、loadSet1、loadSet2、loadSet3、loadSet4、loadSet5、loadResultat、loadApprovalization、repeatulatif.this); File filelocation=新文件(Environment.getExternalStorageDirectory().getAbsolutePath(),filename); uripath=Uri.fromFile(filelocation); storageRef.child(“匹配”).child(文件名).putFile(路径) .addOnSuccessListener(新的OnSuccessListener(){ @凌驾 成功时公共无效(UploadTask.TaskSnapshot TaskSnapshot){ 字符串url=taskSnapshot.getMetadata().getReference().getDownloadUrl().toString(); FirebaseDatabase=FirebaseDatabase.getInstance(); DatabaseReference=database.getReference(); reference.child(“匹配Url”).child(文件名).setValue(Url); } }).addOnFailureListener(新的OnFailureListener(){ @凌驾 public void onFailure(@NonNull异常e){ Toast.makeText(重述,这是一个“错误”,Toast.LENGTH\u LONG); } }).addOnProgressListener(新的OnProgressListener(){ @凌驾 public void onProgress(@NonNull UploadTask.TaskSnapshot快照){ } });