Ошибка LogCat при переключении радиокнопки - PullRequest
0 голосов
/ 30 января 2020

Мое приложение падает при нажатии этой кнопки. Я думаю, что это что-то с моей переменной декларацией баланса и суммы. Баланс сохраняется в моей пользовательской модели как двойной баланс. Я не уверен, что именно является причиной ошибки, так как код не содержит ошибок.

else if (rdiAccountBalance.isChecked()) {

                Double amount = 0.0;
                amount.valueOf(textTotalPrice.toString());


                if (Common.currentUser.getBalance() >= amount) {


                    Request request = new Request(
                            Common.currentUser.getPhone(),
                            Common.currentUser.getName(),
                            editAddress.getText().toString(),
                            textTotalPrice.getText().toString(),
                            "0",
                            "Paid",
                            "Account Balance",
                            cart
                    );

                    //Submit to Firebase
                    //We will using System.CurrentMills to key
                    requests.child(String.valueOf(System.currentTimeMillis()))
                            .setValue(request);

                    //Delete cart
                    new Database(getBaseContext()).cleanCart();


                    //update balance
                    Double balance = Common.currentUser.getBalance() - amount;
                    Map<String, Object> update_balance = new HashMap<>();
                    update_balance.put("balance", balance);

                    FirebaseDatabase.getInstance()
                            .getReference("User")
                            .child(Common.currentUser.getPhone())
                            .updateChildren(update_balance)
                            .addOnCompleteListener(new OnCompleteListener<Void>() {
                                @Override
                                public void onComplete(@NonNull Task<Void> task) {
                                    if (task.isSuccessful()) {
                                        FirebaseDatabase.getInstance()
                                                .getReference("User")
                                                .child(Common.currentUser.getPhone())
                                                .addListenerForSingleValueEvent(new ValueEventListener() {
                                                    @Override
                                                    public void onDataChange(DataSnapshot dataSnapshot) {
                                                        Common.currentUser = dataSnapshot.getValue(User.class);
                                                    }

                                                    @Override
                                                    public void onCancelled(DatabaseError databaseError) {

                                                    }
                                                });

                                    }
                                }

                                ;
                            });

                    Toast.makeText(Cart.this, "Thank you, Order Place.", Toast.LENGTH_SHORT).show();
                    finish();

                }
                else {
                    Toast.makeText(Cart.this, "Your account balance is not sufficient", Toast.LENGTH_SHORT).show();
                }

Это ошибка logcat, которую я получаю. Я думаю, что это может быть объявление переменной.

2020-01-30 11:56:15.100 3255-3749/? E/DatabaseUtils: Writing exception to parcel
java.lang.IllegalArgumentException: You cannot keep your settings in the secure settings.
    at com.android.providers.settings.SettingsProvider.warnOrThrowForUndesiredSecureSettingsMutationForTargetSdk(SettingsProvider.java:2105)
    at com.android.providers.settings.SettingsProvider.enforceRestrictedSystemSettingsMutationForCallingPackage(SettingsProvider.java:1858)
    at com.android.providers.settings.SettingsProvider.mutateSystemSetting(SettingsProvider.java:1662)
    at com.android.providers.settings.SettingsProvider.insertSystemSetting(SettingsProvider.java:1607)
    at com.android.providers.settings.SettingsProvider.call(SettingsProvider.java:549)
    at android.content.ContentProvider$Transport.call(ContentProvider.java:403)
    at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:272)
    at android.os.Binder.execTransact(Binder.java:739)
...