octoshrimpy / quik

The most beautiful SMS messenger for Android - Revived
GNU General Public License v3.0
738 stars 31 forks source link

:lady_beetle: [BUG]Crash when I enter blocked numbers #131

Open anenasa opened 4 months ago

anenasa commented 4 months ago

Describe the bug QUIK crashes when I enter blocked numbers. Here is logcat:

io.reactivex.exceptions.OnErrorNotImplementedException: The exception was not handled due to missing onError handler in the subscribe() method call. Further reading: https://github.com/ReactiveX/RxJava/wiki/Error-Handling | io.realm.exceptions.RealmException: Running transactions on the UI thread has been disabled. It can be enabled by setting 'RealmConfiguration.Builder.allowWritesOnUiThread(true)'.
    at io.reactivex.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:704)
    at io.reactivex.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:701)
    at io.reactivex.internal.observers.LambdaObserver.onError(LambdaObserver.java:77)
    at io.reactivex.internal.observers.LambdaObserver.onNext(LambdaObserver.java:67)
    at com.uber.rxdogtag.DogTagObserver.lambda$onNext$3$com-uber-rxdogtag-DogTagObserver(DogTagObserver.java:56)
    at com.uber.rxdogtag.DogTagObserver$$ExternalSyntheticLambda5.run(Unknown Source:4)
    at com.uber.rxdogtag.RxDogTag.guardedDelegateCall(RxDogTag.java:221)
    at com.uber.rxdogtag.DogTagObserver.onNext(DogTagObserver.java:56)
    at com.uber.autodispose.HalfSerializer.onNext(HalfSerializer.java:121)
    at com.uber.autodispose.AutoDisposingObserverImpl.onNext(AutoDisposingObserverImpl.java:85)
    at com.uber.rxdogtag.DogTagObserver.lambda$onNext$3$com-uber-rxdogtag-DogTagObserver(DogTagObserver.java:56)
    at com.uber.rxdogtag.DogTagObserver$$ExternalSyntheticLambda5.run(Unknown Source:4)
    at com.uber.rxdogtag.RxDogTag.guardedDelegateCall(RxDogTag.java:221)
    at com.uber.rxdogtag.DogTagObserver.onNext(DogTagObserver.java:56)
    at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeOnObserver.onNext(ObservableSubscribeOn.java:58)
    at io.reactivex.subjects.PublishSubject$PublishDisposable.onNext(PublishSubject.java:308)
    at io.reactivex.subjects.PublishSubject.onNext(PublishSubject.java:228)
    at dev.octoshrimpy.quik.feature.blocking.numbers.BlockedNumbersController.showAddDialog$lambda$0(BlockedNumbersController.kt:84)
    at dev.octoshrimpy.quik.feature.blocking.numbers.BlockedNumbersController.$r8$lambda$O7oMuhkDdxQGUzVm3ggIcStgurU(Unknown Source:0)
    at dev.octoshrimpy.quik.feature.blocking.numbers.BlockedNumbersController$$ExternalSyntheticLambda0.onClick(Unknown Source:4)
    at androidx.appcompat.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
    at android.os.Handler.dispatchMessage(Handler.java:107)
    at android.os.Looper.loopOnce(Looper.java:232)
    at android.os.Looper.loop(Looper.java:317)
    at android.app.ActivityThread.main(ActivityThread.java:8594)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:583)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:878)
Caused by: io.realm.exceptions.RealmException: Running transactions on the UI thread has been disabled. It can be enabled by setting 'RealmConfiguration.Builder.allowWritesOnUiThread(true)'.
    at dev.octoshrimpy.quik.feature.blocking.numbers.BlockedNumbersPresenter.bindIntents(BlockedNumbersPresenter.kt:59)
    at [[ ↑↑ Inferred subscribe point ↑↑ ]].(:0)
    at [[ Originating callback: onNext ]].(:0)
    at [[ ↓↓ Original trace ↓↓ ]].(:0)
    at io.realm.BaseRealm.checkAllowWritesOnUiThread(BaseRealm.java:553)
    at io.realm.Realm.executeTransaction(Realm.java:1629)
    at dev.octoshrimpy.quik.repository.BlockingRepositoryImpl.blockNumber(BlockingRepositoryImpl.kt:44)
    at dev.octoshrimpy.quik.feature.blocking.numbers.BlockedNumbersPresenter$bindIntents$4.invoke(BlockedNumbersPresenter.kt:59)
    at dev.octoshrimpy.quik.feature.blocking.numbers.BlockedNumbersPresenter$bindIntents$4.invoke(BlockedNumbersPresenter.kt:59)
    at dev.octoshrimpy.quik.feature.blocking.numbers.BlockedNumbersPresenter.bindIntents$lambda$3(BlockedNumbersPresenter.kt:59)

To Reproduce Steps to reproduce the behavior:

  1. Open navigation drawer
  2. Click on 'Blocking'
  3. Click on 'Blocked numbers'
  4. Click on '+'
  5. Enter phone number
  6. Click on 'BLOCK'

Expected behavior Blocked number added

Smartphone (please complete the following information):

Screenshots If applicable, add screenshots to help explain your problem.

Additional context Add any other context about the problem here.

BobSquarePants commented 3 months ago

I got the same. quik version: 4.0.7

tried phone number format: +123456789 00123456789 no matter the format it always crash

shmu1i commented 2 months ago

Same here multiple devices (all Android 11) and all different number formats

popogomo commented 2 months ago

Was about to open a new issue and noticed this thread. I can confirm I am also experiencing this issue on GrapheneOS, the app was downloaded from here.