Dort, Ich habe ein YouTube-Video für Firebase verfolgen eine einfache Blog-App, wo Benutzer ein Bild mit einem Titel & eine Beschreibung hochladen können. Wenn ich also auf die Submit-Schaltfläche klicke, läuft mein Fortschrittsbalken für unendliche Zeit. Ich bekomme dafür keine Lösung. Bitte hilf mir.Firebase Bild auf Speicher hochladen Android Fehler
Zwei Aktivitäten gibt es eine ist PostActivity.java
und eine andere ist MainActivity.Java
PostActivity.java
: -
public class PostActivity extends AppCompatActivity {
private ImageButton img_btn_add_photo;
private EditText et_post_title,et_post_description;
private Button btn_post_submit;
private Uri mImageUri = null;
private static final int GALLERY_REQUEST = 1;
private ProgressDialog mProgressDialog;
private StorageReference mStorage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_post);
mStorage = FirebaseStorage.getInstance().getReference();
mProgressDialog = new ProgressDialog(this);
et_post_title = (EditText) findViewById(R.id.et_post_title);
et_post_description = (EditText) findViewById(R.id.et_post_description);
btn_post_submit = (Button) findViewById(R.id.btn_post_submit);
img_btn_add_photo = (ImageButton) findViewById(R.id.img_btn_add_photo);
img_btn_add_photo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent galleryIntent = new Intent(Intent.ACTION_GET_CONTENT);
galleryIntent.setType("image/*");
startActivityForResult(galleryIntent,GALLERY_REQUEST);
}
});
btn_post_submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
submitToDB();
}
});
}
private void submitToDB() {
mProgressDialog.setMessage("Submitting Post...");
mProgressDialog.show();
final String title = et_post_title.getText().toString().trim();
final String descr = et_post_description.getText().toString().trim();
if (!TextUtils.isEmpty(title) && !TextUtils.isEmpty(descr) && mImageUri != null){
StorageReference filePath = mStorage.child("Blog_Images").child(mImageUri.getLastPathSegment());
filePath.putFile(mImageUri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
Uri downloadUri = taskSnapshot.getDownloadUrl();
mProgressDialog.dismiss();
}
});
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == GALLERY_REQUEST && resultCode == RESULT_OK){
mImageUri = data.getData();
img_btn_add_photo.setImageURI(mImageUri);
}
}
}
Manifest.xml
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".PostActivity"></activity>
</application>
</manifest>
in MainAcitivity.java
nur ein Add-Taste befindet sich im Menü gibt. also habe ich es hier nicht hochgeladen. bitte hilfe.
Was sagt die Protokolldatei zu schreiben? irgendeine Warnung von Firebase? – Jaco
keine Warnung Sir .. Ich folgte https://www.youtube.com/watch?v=x0ScnHJi8WY&list=PLGCjwl1RrtcTXrWuRTa59RyRmQ4OedWrt&index=19 –
Ich glaube, Sie sorgfältig die Log versuchen müssen, lesen ... Vielleicht ist Feuerbasis nicht so dass Sie registrieren Ihre image – Jaco