Android-студия Kotlin и Wolfram Alpha api - PullRequest
1 голос
/ 29 сентября 2019

Я работаю над последней версией Android Studio, собирающей (хотя бы пытаюсь) приложение, использующее kotlin.Я создал кнопку, которая захватывает текст, введенный пользователем, отправляет его в Wolfram Alpha через запрос API и выводит данные из WA.

Однако, несмотря на то, что он строится без ошибок, после нажатия кнопки запускаAPI, он закрывает эту деятельность и возвращается к основной деятельности.Неправильно ли я использую API?

Спасибо.

package com.example.prac

import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import kotlinx.android.synthetic.main.activity_calc.*
import khttp.get

class CalcActivity : AppCompatActivity() {

    val BASE_URL = "https://www.wolframalpha.com/input/?i=derivative%20calculator"
    val APP_ID = *omitted*
    var s = String()



    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_calc)


        val newbutton = findViewById<Button>(R.id.transfer)
        // set on-click listener
        newbutton.setOnClickListener {

            s = poly_edit.text.toString()
            val question = s.replace("+", " plus ").replace(" ", "+")
            val query = "$BASE_URL?i=$question&appid=$APP_ID"
            val t = khttp.get(query).text
            grabwolf.text = t

        }

    }
}

(я выложу любой необходимый код. Я просто не хотел добавлять ничего ненужного.)

logcat

2019-09-28 21:00:49.185 4927-4927/? I/om.example.pra: Not late-enabling -Xcheck:jni (already on)
2019-09-28 21:00:49.214 4927-4927/? W/om.example.pra: Unexpected CPU variant for X86 using defaults: x86
2019-09-28 21:00:49.393 4927-4927/com.example.prac W/om.example.pra: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (light greylist, reflection)
2019-09-28 21:00:49.393 4927-4927/com.example.prac W/om.example.pra: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (light greylist, reflection)
2019-09-28 21:00:49.420 4927-4927/com.example.prac D/OpenGLRenderer: HWUI GL Pipeline
2019-09-28 21:00:49.467 4927-4955/com.example.prac I/ConfigStore: android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::hasWideColorDisplay retrieved: 0
2019-09-28 21:00:49.468 4927-4955/com.example.prac I/ConfigStore: android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::hasHDRDisplay retrieved: 0
2019-09-28 21:00:49.468 4927-4955/com.example.prac I/OpenGLRenderer: Initialized EGL, version 1.4
2019-09-28 21:00:49.468 4927-4955/com.example.prac D/OpenGLRenderer: Swap behavior 1
2019-09-28 21:00:49.468 4927-4955/com.example.prac W/OpenGLRenderer: Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
2019-09-28 21:00:49.468 4927-4955/com.example.prac D/OpenGLRenderer: Swap behavior 0
2019-09-28 21:00:49.476 4927-4955/com.example.prac D/EGL_emulation: eglCreateContext: 0xeaa4e380: maj 2 min 0 rcv 2
2019-09-28 21:00:49.513 4927-4955/com.example.prac D/EGL_emulation: eglMakeCurrent: 0xeaa4e380: ver 2 0 (tinfo 0xe6c3f6a0)
2019-09-28 21:00:49.552 4927-4955/com.example.prac D/EGL_emulation: eglMakeCurrent: 0xeaa4e380: ver 2 0 (tinfo 0xe6c3f6a0)
2019-09-28 21:35:47.332 1889-1902/? E/memtrack: Couldn't load memtrack module
2019-09-28 21:35:48.500 2486-5263/? E/EntrySyncManager: Cannot determine account name: drop request
2019-09-28 21:35:48.501 2486-5263/? E/NowController: Failed to access data from EntryProvider. ExecutionException.
    java.util.concurrent.ExecutionException: com.google.android.apps.gsa.sidekick.main.h.n: Could not complete scheduled request to refresh entries. ClientErrorCode: 3
        at com.google.common.util.concurrent.d.eA(SourceFile:85)
        at com.google.common.util.concurrent.d.get(SourceFile:23)
        at com.google.common.util.concurrent.l.get(SourceFile:2)
        at com.google.android.apps.gsa.staticplugins.nowstream.b.a.be.cbB(SourceFile:49)
        at com.google.android.apps.gsa.staticplugins.nowstream.b.a.be.cbA(SourceFile:181)
        at com.google.android.apps.gsa.staticplugins.nowstream.b.a.bh.run(Unknown Source:2)
        at com.google.android.apps.gsa.shared.util.concurrent.at.run(SourceFile:4)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:458)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:458)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at com.google.android.apps.gsa.shared.util.concurrent.b.g.run(Unknown Source:4)
        at com.google.android.apps.gsa.shared.util.concurrent.b.aw.run(SourceFile:4)
        at com.google.android.apps.gsa.shared.util.concurrent.b.aw.run(SourceFile:4)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:764)
        at com.google.android.apps.gsa.shared.util.concurrent.b.i.run(SourceFile:6)
     Caused by: com.google.android.apps.gsa.sidekick.main.h.n: Could not complete scheduled request to refresh entries. ClientErrorCode: 3
        at com.google.android.apps.gsa.staticplugins.nowstream.b.a.ar.az(Unknown Source:4)
        at com.google.common.util.concurrent.q.ap(SourceFile:7)
        at com.google.common.util.concurrent.p.run(SourceFile:32)
        at com.google.common.util.concurrent.bt.execute(SourceFile:3)
        at com.google.common.util.concurrent.d.b(SourceFile:275)
        at com.google.common.util.concurrent.d.addListener(SourceFile:135)
        at com.google.common.util.concurrent.p.b(SourceFile:3)
        at com.google.android.apps.gsa.shared.util.concurrent.h.a(SourceFile:16)
        at com.google.android.apps.gsa.shared.util.concurrent.h.a(SourceFile:13)
        at com.google.android.apps.gsa.staticplugins.nowstream.b.a.be.cbB(SourceFile:47)
        at com.google.android.apps.gsa.staticplugins.nowstream.b.a.be.cbA(SourceFile:181) 
        at com.google.android.apps.gsa.staticplugins.nowstream.b.a.bh.run(Unknown Source:2) 
        at com.google.android.apps.gsa.shared.util.concurrent.at.run(SourceFile:4) 
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:458) 
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:458) 
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
        at com.google.android.apps.gsa.shared.util.concurrent.b.g.run(Unknown Source:4) 
        at com.google.android.apps.gsa.shared.util.concurrent.b.aw.run(SourceFile:4) 
        at com.google.android.apps.gsa.shared.util.concurrent.b.aw.run(SourceFile:4) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) 
        at java.lang.Thread.run(Thread.java:764) 
        at com.google.android.apps.gsa.shared.util.concurrent.b.i.run(SourceFile:6) 
2019-09-28 21:35:48.885 1729-1888/? E/SurfaceFlinger: ro.sf.lcd_density must be defined as a build property
2019-09-28 21:35:48.954 2294-2294/? E/BeaconBle: Missing BluetoothAdapter
2019-09-28 21:35:48.994 2294-2294/? E/BeaconBle: Scan couldn't start for Places
2019-09-28 21:35:49.064 1729-1769/? E/SurfaceFlinger: ro.sf.lcd_density must be defined as a build property
2019-09-28 21:35:51.448 1889-1994/? E/TaskPersister: File error accessing recents directory (directory doesn't exist?).
2019-09-28 21:35:52.211 1830-1830/? E/netmgr: Failed to open QEMU pipe 'qemud:network': Invalid argument
2019-09-28 21:35:52.211 1830-1830/? E/netmgr: WifiForwarder unable to open QEMU pipe: Invalid argument
2019-09-28 21:35:54.154 1743-1783/? E/storaged: getDiskStats failed with result NOT_SUPPORTED and size 0
2019-09-28 21:35:59.653 1889-1902/? E/memtrack: Couldn't load memtrack module
2019-09-28 21:36:01.166 1889-1994/? E/TaskPersister: File error accessing recents directory (directory doesn't exist?).
2019-09-28 21:36:09.755 1889-1902/? E/memtrack: Couldn't load memtrack module
2019-09-28 21:36:13.921 5300-5300/com.example.prac E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.prac, PID: 5300
    java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:503)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
     Caused by: java.lang.reflect.InvocationTargetException
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 
     Caused by: java.lang.NoSuchFieldException: No field host in class Ljava/net/URL; (declaration of 'java.net.URL' appears in /system/framework/core-oj.jar)
        at java.lang.Class.getDeclaredField(Native Method)
        at khttp.requests.GenericRequest.toIDN(GenericRequest.kt:193)
        at khttp.requests.GenericRequest.makeRoute(GenericRequest.kt:198)
        at khttp.requests.GenericRequest.<init>(GenericRequest.kt:128)
        at khttp.KHttp.request(KHttp.kt:58)
        at khttp.KHttp.get(KHttp.kt:28)
        at khttp.KHttp.get$default(KHttp.kt:27)
        at com.example.prac.CalcActivity$onCreate$1.onClick(CalcActivity.kt:31)
        at android.view.View.performClick(View.java:6597)
        at android.view.View.performClickInternal(View.java:6574)
        at android.view.View.access$3100(View.java:778)
        at android.view.View$PerformClick.run(View.java:25885)
        at android.os.Handler.handleCallback(Handler.java:873)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6669)
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 
2019-09-28 21:36:13.979 1889-1960/? E/InputDispatcher: channel '67c0edc com.example.prac/com.example.prac.CalcActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
2019-09-28 21:36:13.982 1889-1960/? E/InputDispatcher: channel 'bb96323 com.example.prac/com.example.prac.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...