既存のノードでfirebaseデータベースを更新するときに奇妙な問題が発生しました。 それはInvocationTargetExceptionで戻って来て、さらにスタックオーバーフローエラーの下にあります(サイトがその名前を取得した場所です)。 Iveは私が考えることができたすべてを試したので、それを検索してまだそれを修正することはできません。問題は、ビルドファイル内にあるようです。私は最近、自分のアプリパッケージ名を変更してfirebaseコンソールに追加しました。 また、ログデバッグセクションがまだ私のアプリの以前のパッケージ名com.example.shopperを参照していることに気付きました。これが原因かもしれません。 それは2本の線が下に指摘されていますか?updatechildren()のstackoverflowエラーfirebase android
else {
InventoryItem updatedItem = items.get(position).getInventoryItem();
updatedItem.setPrice(price);
updatedItem.setQuantity(quantity);
updatedItem.setUnitName(unitType);
Map<String, Object> databaseUpdate = new HashMap<>();
databaseUpdate.put(updatedItem.getName(), updatedItem);
Log.d(TAG, "done: updatedItem: "+updatedItem.toString());
inventoryDatabaseReference=inventoryDatabaseReference.child(updatedItem.getCategory());
Log.d(TAG, "done: updateNotWorking: "+inventoryDatabaseReference.toString());
inventoryDatabaseReference.updateChildren(databaseUpdate).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.d(TAG, "onFailure: "+e.toString());
}
});
}
これは、トレースが私を指し示す障害リスナーの行です。リスナーを追加して何がうまくいかなかったのかを知るために、リスナーを追加しましたが、その行が呼び出されるとすぐに見つかりました。上記のログのようにエラーが発生しました。このフラグメントは、そのデータの初期配置などの複数の同様の目的に使用され、その目的で動作します。それは、これは簡単なエラーと時間の無駄ですが、アイブ氏は、この上のすべての最後の夜を過ごしたし、解決策を見ることができない場合donelistener.done
builder.setTitle(title).setPositiveButton("Done", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if (setPrice || isUpdating)
doneListener.done(quantity, unitSelected, position, priceSet);
else {
priceInBasket = priceSet * quantityToBuy;
Log.d("n", "onClick: TotalPrice toBasket " + priceInBasket + "individiual price" + priceSet);
doneListener.done(quantityToBuy, buyerItemUnitName, position, priceInBasket);
}
}
})
申し訳ありませんを呼び出す最初の行を指すの下 トレース。それはその後、私のコードは、上記のある行が
06-07 14:13:21.877 14585-14585/com.example.testing.shopper W/System.err: at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
06-07 14:13:21.877 14585-14585/com.example.testing.shopper W/System.err: at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
06-07 14:13:21.877 14585-14585/com.example.testing.shopper W/System.err: at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
06-07 14:13:21.877 14585-14585/com.example.testing.shopper W/System.err: at com.google.android.gms.internal.zzbqi.zzaF(Unknown Source)
06-07 14:13:21.877 14585-14585/com.example.testing.shopper W/System.err: at com.google.firebase.database.DatabaseReference.zza(Unknown Source)
06-07 14:13:21.877 14585-14585/com.example.testing.shopper W/System.err: at com.google.firebase.database.DatabaseReference.updateChildren(Unknown Source)
06-07 14:13:21.878 14585-14585/com.example.testing.shopper W/System.err: at com.aihsoftware.shopper.CurrentInventoryFragment.done(CurrentInventoryFragment.java:288)
06-07 14:13:21.878 14585-14585/com.example.testing.shopper W/System.err: at com.aihsoftware.shopper.DialogFragments.AddItemToInventoryDialogFragment$2.onClick(AddItemToInventoryDialogFragment.java:145)
06-07 14:13:21.878 14585-14585/com.example.testing.shopper W/System.err: at android.support.v7.app.AlertController$ButtonHandler.handleMessage(AlertController.java:157)
06-07 14:13:21.878 14585-14585/com.example.testing.shopper W/System.err: at android.os.Handler.dispatchMessage(Handler.java:110)
06-07 14:13:21.878 14585-14585/com.example.testing.shopper W/System.err: at android.os.Looper.loop(Looper.java:193)
06-07 14:13:21.878 14585-14585/com.example.testing.shopper W/System.err: rr: at java.lang.reflect.Method.invoke(Method.java:515)
06-07 14:13:21.894 14585-14585/com.example.testing.shopper W/System.err: ... 557 more
06-07 14:13:21.895 14585-14585/com.example.testing.shopper W/System.err: Caused by: java.lang.StackOverflowError
06-07 14:13:21.906 14585-14585/com.example.testing.shopper W/System.err: at java.lang.AbstractStringBuilder.append0(AbstractStringBuilder.java:163)
06-07 14:13:21.906 14585-14585/com.example.testing.shopper W/System.err: at java.lang.StringBuilder.append(StringBuilder.java:311)
06-07 14:13:21.906 14585-14585/com.example.testing.shopper W/System.err: at android.net.Uri.encode(Uri.java:1864)
06-07 14:13:21.906 14585-14585/com.example.testing.shopper W/System.err: at android.net.Uri$PathPart.getEncoded(Uri.java:2112)
06-07 14:13:21.906 14585-14585/com.example.testing.shopper W/System.err: at android.net.Uri$HierarchicalUri.appendSspTo(Uri.java:1216)
06-07 14:13:21.906 14585-14585/com.example.testing.shopper W/System.err: at android.net.Uri$HierarchicalUri.makeSchemeSpecificPart(Uri.java:1205)
06-07 14:13:21.906 14585-14585/com.example.testing.shopper W/System.err: at android.net.Uri$HierarchicalUri.getSsp(Uri.java:1188)
06-07 14:13:21.906 14585-14585/com.example.testing.shopper W/System.err: at android.net.Uri$HierarchicalUri.getSchemeSpecificPart(Uri.java:1197)
06-07 14:13:21.906 14585-14585/com.example.testing.shopper W/System.err: ... 559 more
06-07 14:13:21.906 14585-14585/com.example.testing.shopper W/dalvikvm: threadid=1: calling UncaughtExceptionHandler
であることを示している
06-07 14:13:21.434 14585-14585/com.example.testing.shopper D/CurrentInventory: done: updatedItem: InventoryItem{quantity=6, price=0.5, unitName='/100g'}
06-07 14:13:21.435 14585-14585/com.example.testing.shopper D/CurrentInventory: done: updateNotWorking: https://shopper-a34fb.firebaseio.com/ShopInventory/-KkgxqStvYBMm1fz0lOZ/Energy%20Drinks
06-07 14:13:21.764 14585-14585/com.example.testing.shopper I/dalvikvm: threadid=1: stack overflow on call to Ljava/lang/AbstractStringBuilder;.enlargeBuffer:VI
06-07 14:13:21.764 14585-14585/com.example.testing.shopper I/dalvikvm: method requires 28+20+20=68 bytes, fp is 0x419a2334 (52 left)
06-07 14:13:21.764 14585-14585/com.example.testing.shopper I/dalvikvm: expanding stack end (0x419a2300 to 0x419a2000)
06-07 14:13:21.764 14585-14585/com.example.testing.shopper I/dalvikvm: Shrank stack (to 0x419a2300, curFrame is 0x419a248c)
06-07 14:13:21.765 14585-14585/com.example.testing.shopper D/AndroidRuntime: Shutting down VM
06-07 14:13:21.765 14585-14585/com.example.testing.shopper D/dalvikvm: threadid=1: detach (group=0x41aa3ce0)
06-07 14:13:21.765 14585-14585/com.example.testing.shopper W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x41aa3ce0)
06-07 14:13:21.765 14585-14585/com.example.testing.shopper W/dalvikvm: threadid=1: uncaught exception occurred
06-07 14:13:21.765 14585-14585/com.example.testing.shopper W/System.err: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
06-07 14:13:21.772 14585-14585/com.example.testing.shopper W/System.err: at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
これら
06-07 14:13:21.859 14585-14585/com.example.testing.shopper D/dalvikvm: GC_FOR_ALLOC freed 5052K (46469), 38% free 8607K/13700K, paused 34ms, total 35ms
06-07 14:13:21.860 14585-14585/com.example.testing.shopper W/System.err: at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
06-07 14:13:21.860 14585-14585/com.example.testing.shopper W/System.err: at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
06-07 14:13:21.860 14585-14585/com.example.testing.shopper W/System.err: at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
06-07 14:13:21.860 14585-14585/com.example.testing.shopper W/System.err: at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
の束以下のようにあなたはちょうど私が トレースを教えて必要があるかもしれない他の ものはあります
最後にこれを赤い束で
06-07 14:13:21.927 14585-14585/com.example.testing.shopper E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.testing.shopper, PID: 14585
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzaE(Unknown Source)
at com.google.android.gms.internal.zzbqi$zza.zzaF(Unknown Source)
at com.google.android.gms.internal.zzbqi.zzax(Unknown Source)
ありがとうございます皆さん
EDIT:もう少し掘り出しを行い、呼び出し対象はstackoverflowエラーのラッパーです。それを指摘するのを忘れてしまった。 これは、URIとstringbuilderに問題があることを意味します。 .updateChildren()はURIので動作しません
を働いたものですバリエーションとして、これらの両方にカテゴリを配置された複数subcategories.Iを引き起こして問題となっているですファイアベース。あなたは、String、Long、Double、Boolean、MapとList