将图像从图库上传到 Firebase 存储时应用程序崩溃

Posted

技术标签:

【中文标题】将图像从图库上传到 Firebase 存储时应用程序崩溃【英文标题】:crash app when upload the image from gallery to firebase storage 【发布时间】:2020-06-01 13:51:08 【问题描述】:

当应用程序崩溃时,它会说:

"java.lang.NoSuchMethodError: No virtual method getToken(Z)Lcom/google/android/gms/tasks/Task; in class Lcom/google/firebase/FirebaseApp; or its super classes (declaration of 'com.google.firebase.FirebaseApp' appears in /data/app/com.example.minisign-uZwwNJVtsjlOVpgpqIRyHQ==/base.apk)at com.google.firebase.storage.internal.Util.getCurrentAuthToken(com.google.firebase:firebase-storage@@16.0.4:148)"

我尝试了很多事情,但没有解决它。 我的代码:

final StorageReference fileReference=storageReference.child(imageuri.getLastPathSegment()+"."+getfileExtension(imageuri));
            uploadTask=fileReference.putFile(imageuri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() 
                @Override
                public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) 
                    // Get a URL to the uploaded content
                    //Uri downloadUrl = taskSnapshot.getUploadSessionUri();
                    //pd.dismiss();
                    Toast.makeText(SettingsActivity.this, "Image Uploaded!!", Toast.LENGTH_SHORT).show();
                
            )
            .addOnFailureListener(new OnFailureListener() 
                @Override
                public void onFailure(@NonNull Exception exception) 
                    Toast.makeText(SettingsActivity.this,"Failed!",Toast.LENGTH_SHORT).show();
                    //pd.dismiss();
                
            );
           

对于我的 gradle:

implementation 'com.google.firebase:firebase-analytics:17.2.2'
implementation 'com.google.firebase:firebase-storage:16.0.4'

implementation 'com.firebaseui:firebase-ui-database:1.2.0'

implementation 'com.google.firebase:firebase-auth:19.2.0'

implementation 'com.google.firebase:firebase-database:19.2.0'

【问题讨论】:

【参考方案1】:

始终确保您使用的是所有库的最新版本,如 release notes 所示。你在Firebase-UI 的版本上也很落后。最新的是 6.2.0。

【讨论】:

【参考方案2】:

尝试在 build.gradle 文件中添加firebase sdk library。

implementation 'com.google.firebase:firebase-core:17.0.0'

【讨论】:

以上是关于将图像从图库上传到 Firebase 存储时应用程序崩溃的主要内容,如果未能解决你的问题,请参考以下文章

如何将图像从颤动的资产上传到firebase存储?

将图像上传到 Firebase 存储后如何获取图像 uri?

将图像从 imageview 上传到 Firebase Android

当相机应用程序打开以在 android studio 中获取图像时,您可以打开图库吗?

无法从 python 服务器将图像上传到 Firebase 存储

用户无权访问此对象。带储藏火库