как хранить данные в Firebase Android - PullRequest
2 голосов
/ 25 сентября 2019

Я новичок в Android, и я реализовал функцию, которая генерирует QR-код и сохраняет данные в базе данных, используя базу данных Firebase в реальном времени, он генерирует QR-код, но он не сохраняет данные и не останавливает программу, как я использую Androidстудия

private void addItem(){
        String name=text.getText().toString().trim();
        String price=textPrice.getText().toString().trim();
        String expire=textExpire.getText().toString().trim();
        if((!TextUtils.isEmpty(name)) &&(! TextUtils.isEmpty(price))&&(! TextUtils.isEmpty(expire))){
            String id=databaseItem.push().getKey();
            Items item=new Items(id,name,price,expire,bitmap);
            databaseItem.child(id).setValue(item);

        }
        else{
            Toast.makeText(this,"You should fill all fields",Toast.LENGTH_LONG).show();
        }
}

это трек след

E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.androidexample.myqueueskip, PID: 30710
    com.google.firebase.database.DatabaseException: Serializing Arrays is not supported, please use Lists instead
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.serialize(com.google.firebase:firebase-database@@16.0.4:160)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.access$200(com.google.firebase:firebase-database@@16.0.4:47)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper$BeanMapper.serialize(com.google.firebase:firebase-database@@16.0.4:663)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.serialize(com.google.firebase:firebase-database@@16.0.4:167)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.access$200(com.google.firebase:firebase-database@@16.0.4:47)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper$BeanMapper.serialize(com.google.firebase:firebase-database@@16.0.4:663)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.serialize(com.google.firebase:firebase-database@@16.0.4:167)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.access$200(com.google.firebase:firebase-database@@16.0.4:47)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper$BeanMapper.serialize(com.google.firebase:firebase-database@@16.0.4:663)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.serialize(com.google.firebase:firebase-database@@16.0.4:167)
        at com.google.firebase.database.core.utilities.encoding.CustomClassMapper.convertToPlainJavaTypes(com.google.firebase:firebase-database@@16.0.4:60)
        at com.google.firebase.database.DatabaseReference.setValueInternal(com.google.firebase:firebase-database@@16.0.4:292)
        at com.google.firebase.database.DatabaseReference.setValue(com.google.firebase:firebase-database@@16.0.4:166)
        at com.androidexample.myqueueskip.MainActivity.addItem(MainActivity.java:70)
        at com.androidexample.myqueueskip.MainActivity.access$000(MainActivity.java:22)
        at com.androidexample.myqueueskip.MainActivity$1.onClick(MainActivity.java:53)
        at android.view.View.performClick(View.java:6294)
        at android.view.View$PerformClick.run(View.java:24770)
        at android.os.Handler.handleCallback(Handler.java:790)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6494)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...