Не удается запустить действие с использованием намерения. Показывает белый экран и переходит к первому действию

#android #kotlin #android-intent

#Android #kotlin #android-намерение

Вопрос:

хотите отправить две строковые переменные из SecondActivity в thirdActivity, используя intents. Он работает правильно в Android 10 (APi 29 и выше). Но на Android ниже он просто показывает белый экран на секунду и переходит к FirstActivity, не переходя к thirdActivity. но сохранение материалов работает нормально.

on the secondActivity.kt

     private fun save() {

         //Does saving stuff....then should go to the next Activity....

      try{
            val finIntent = Intent(this@Details_Activity, Finish_Activity::class.java)
            finIntent.putExtra("thePathName", thePath)
            finIntent.putExtra("theName", name)
            startActivity(finIntent)
            finish() }
            catch (e: NoSuchMethodException) {
                e.printStackTrace()
                Toast.makeText(this,e.message, Toast.LENGTH_LONG).show()
            }
    }
  

on the thirdActivity.kt

     val name = intent.getStringExtra("theName")
    congrats_Text.text = ("Congratulations, $name !")

    val path = intent.getStringExtra("thePathName")
    path_Text.text = path.toString()
  

I'm getting,

     ``2020-10-05 20:54:20.582 20654-20654/? W/ReflectionUtils: java.lang.NoSuchMethodException: android.os.MessageQueue#enableMonitor()#bestmatch
        at miui.util.ReflectionUtils.findMethodBestMatch(ReflectionUtils.java:338)
        at miui.util.ReflectionUtils.findMethodBestMatch(ReflectionUtils.java:375)
        at miui.util.ReflectionUtils.callMethod(ReflectionUtils.java:800)
        at miui.util.ReflectionUtils.tryCallMethod(ReflectionUtils.java:818)
        at android.os.BaseLooper.enableMonitor(BaseLooper.java:47)
        at android.os.Looper.prepareMainLooper(Looper.java:112)
        at android.app.ActivityThread.main(ActivityThread.java:6221)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:933)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)
2020-10-05 20:54:20.800 20654-20654/com.Something.fresume I/art: Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.View$OnUnhandledKeyEventListener" on path: DexPathList[[zip file "/data/app/com.Something.fresume-1/base.apk"],nativeLibraryDirectories=[/data/app/com.Something.fresume-1/lib/arm64, /system/lib64, /vendor/lib64]]``
  

on verbose

 W/ConnectionTracker: Exception thrown while unbinding
    java.lang.IllegalArgumentException: Service not registered: lx@df0e0cd
        at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:1297)
        at android.app.ContextImpl.unbindService(ContextImpl.java:1520)
        at android.content.ContextWrapper.unbindService(ContextWrapper.java:658)
        at ci.b(:com.google.android.gms.dynamite_measurementdynamite@203615050@20.36.15 (040406-0):1)
        at ci.a(:com.google.android.gms.dynamite_measurementdynamite@203615050@20.36.15 (040406-0):6)
        at ly.A(:com.google.android.gms.dynamite_measurementdynamite@203615050@20.36.15 (040406-0):10)
        at li.a(:com.google.android.gms.dynamite_measurementdynamite@203615050@20.36.15 (040406-0):3)
        at ec.run(:com.google.android.gms.dynamite_measurementdynamite@203615050@20.36.15 (040406-0):3)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:428)
        at java.util.concurrent.FutureTask.run(FutureTask.java:237)
        at jb.run(:com.google.android.gms.dynamite_measurementdynamite@203615050@20.36.15 (040406-0):6)``
  

On error,

 E/libEGL: validate_display:99 error 3008 (EGL_BAD_DISPLAY)
  

Комментарии:

1. Проверьте logcat, возможно, есть исключение

2. Вы должны увидеть исключение с отслеживанием стека в logcat. Отредактируйте свой вопрос и вставьте туда исключение и stacktrace, и мы сможем помочь.

3. Сэр @DavidWasser, получаю исключение ‘W / ConnectionTracker: исключение, вызванное при отвязке java.lang. Исключение IllegalArgumentException: служба не зарегистрирована: lx @9090aa6’ Как мне это решить…

4. Вы редактируете свой вопрос и вставляете содержимое сообщения об исключении с помощью stacktrace в свой вопрос. Stacktrace сообщит вам, в каком методе и в какой строке возникает исключение. Вставьте этот код также в свой вопрос.

5. Сэр @DavidWasser, я отредактировал вопрос, насколько мне известно. Он даже не запускает оператор catch, поскольку он работает нормально, но проблема с переходом к другому действию все еще продолжается. Есть ли какой-либо другой простой способ сделать это с помощью намерений?