我是 Android 和 IBM Watson 的新手。我正在构建一个简单的应用程序来分析输入文本的语气。但是,在运行应用程序时,我收到以下错误:
05-23 15:14:04.808 25157-25157/? I/art: 后期启用 -Xcheck:jni
05-23 15:14:04.949 25157-25157/com.abhishek.speechtotextapp W/艺术:执行失败(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg --debuggable --instruction-set =arm --instruction-set-features=smp,div,atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=krait --instruction-set-features=default --dex-file=/data/app/com.abhishek.speechtotextapp-2/split_lib_dependencies_apk.apk --oat-file=/data/dalvik -cache/arm/data@app@com.abhishek.speechtotextapp-2@split_lib_dependencies_apk.apk@classes.dex) 因为非 0 退出状态
05-23 15:14:05.312 25157-25157/com.abhishek.speechtotextapp W/艺术:执行失败(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg --debuggable --instruction-set =arm --instruction-set-features=smp,div,atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=krait --instruction-set-features=default --dex-file=/data/app/com.abhishek.speechtotextapp-2/split_lib_slice_0_apk.apk --oat-file=/data/dalvik -cache/arm/data@app@com.abhishek.speechtotextapp-2@split_lib_slice_0_apk.apk@classes.dex) 因为非 0 退出状态
05-23 15:14:05.350 25157-25157/com.abhishek.speechtotextapp W/艺术:执行失败(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg --debuggable --instruction-set =arm --instruction-set-features=smp,div,atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=krait --instruction-set-features=default --dex-file=/data/app/com.abhishek.speechtotextapp-2/split_lib_slice_1_apk.apk --oat-file=/data/dalvik -cache/arm/data@app@com.abhishek.speechtotextapp-2@split_lib_slice_1_apk.apk@classes.dex) 因为非 0 退出状态
05-23 15:14:05.398 25157-25157/com.abhishek.speechtotextapp W/艺术:执行失败(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg --debuggable --instruction-set =arm --instruction-set-features=smp,div,atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=krait --instruction-set-features=default --dex-file=/data/app/com.abhishek.speechtotextapp-2/split_lib_slice_2_apk.apk --oat-file=/data/dalvik -cache/arm/data@app@com.abhishek.speechtotextapp-2@split_lib_slice_2_apk.apk@classes.dex) 因为非 0 退出状态
05-23 15:14:05.445 25157-25157/com.abhishek.speechtotextapp W/艺术:执行失败(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg --debuggable --instruction-set =arm --instruction-set-features=smp,div,atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=krait --instruction-set-features=default --dex-file=/data/app/com.abhishek.speechtotextapp-2/split_lib_slice_3_apk.apk --oat-file=/data/dalvik -cache/arm/data@app@com.abhishek.speechtotextapp-2@split_lib_slice_3_apk.apk@classes.dex) 因为非 0 退出状态
05-23 15:14:05.492 25157-25157/com.abhishek.speechtotextapp W/艺术:执行失败(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg --debuggable --instruction-set =arm --instruction-set-features=smp,div,atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=krait --instruction-set-features=default --dex-file=/data/app/com.abhishek.speechtotextapp-2/split_lib_slice_4_apk.apk --oat-file=/data/dalvik -cache/arm/data@app@com.abhishek.speechtotextapp-2@split_lib_slice_4_apk.apk@classes.dex) 因为非 0 退出状态
05-23 15:14:05.535 25157-25157/com.abhishek.speechtotextapp W/艺术:执行失败(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg --debuggable --instruction-set =arm --instruction-set-features=smp,div,atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=krait --instruction-set-features=default --dex-file=/data/app/com.abhishek.speechtotextapp-2/split_lib_slice_5_apk.apk --oat-file=/data/dalvik -cache/arm/data@app@com.abhishek.speechtotextapp-2@split_lib_slice_5_apk.apk@classes.dex) 因为非 0 退出状态
05-23 15:14:05.588 25157-25157/com.abhishek.speechtotextapp W/艺术:执行失败(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg --debuggable --instruction-set =arm --instruction-set-features=smp,div,atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=krait --instruction-set-features=default --dex-file=/data/app/com.abhishek.speechtotextapp-2/split_lib_slice_6_apk.apk --oat-file=/data/dalvik -cache/arm/data@app@com.abhishek.speechtotextapp-2@split_lib_slice_6_apk.apk@classes.dex) 因为非 0 退出状态
05-23 15:14:05.632 25157-25157/com.abhishek.speechtotextapp W/艺术:执行失败(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg --debuggable --instruction-set =arm --instruction-set-features=smp,div,atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=krait --instruction-set-features=default --dex-file=/data/app/com.abhishek.speechtotextapp-2/split_lib_slice_7_apk.apk --oat-file=/data/dalvik -cache/arm/data@app@com.abhishek.speechtotextapp-2@split_lib_slice_7_apk.apk@classes.dex) 因为非 0 退出状态
05-23 15:14:05.682 25157-25157/com.abhishek.speechtotextapp W/艺术:执行失败(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg --debuggable --instruction-set =arm --instruction-set-features=smp,div,atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=krait --instruction-set-features=default --dex-file=/data/app/com.abhishek.speechtotextapp-2/split_lib_slice_8_apk.apk --oat-file=/data/dalvik -cache/arm/data@app@com.abhishek.speechtotextapp-2@split_lib_slice_8_apk.apk@classes.dex) 因为非 0 退出状态
05-23 15:14:05.721 25157-25157/com.abhishek.speechtotextapp W/艺术:执行失败(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg --debuggable --instruction-set =arm --instruction-set-features=smp,div,atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=krait --instruction-set-features=default --dex-file=/data/app/com.abhishek.speechtotextapp-2/split_lib_slice_9_apk.apk --oat-file=/data/dalvik -cache/arm/data@app@com.abhishek.speechtotextapp-2@split_lib_slice_9_apk.apk@classes.dex) 因为非 0 退出状态
05-23 15:14:05.722 25157-25157/com.abhishek.speechtotextapp W/系统:类加载器引用未知路径:/data/app/com.abhishek.speechtotextapp-2/lib/arm
05-23 15:14:05.727 25157-25157/com.abhishek.speechtotextapp I/InstantRun: 启动即时运行服务器: 是主进程
05-23 15:14:05.757 25157-25157/com.abhishek.speechtotextapp I/CredentialUtils:JNDI 字符串查找不可用。
05-23 15:14:05.890 25157-25331/com.abhishek.speechtotextapp D/OpenGLRenderer: 使用 EGL_SWAP_BEHAVIOR_PRESERVED: true
? 05-23 15:14:05.932 25157-25331/com.abhishek.speechtotextapp I/Adreno-EGL: : EGL 1.4 高通构建:Nondeterministic_AU_msm8974_LA.BF.1.1.3_RB1__release_AU (Ia6c73e7530) OpenGL ES 着色器编译器版本:E031.000构建日期:12/04/15 周五 本地分支:mybranch17080070 远程分支:quic/LA.BF.1.1.3_rb1.5 本地补丁:无 重建分支:无
05-23 15:14:05.933 25157-25331/com.abhishek.speechtotextapp I/OpenGLRenderer:初始化 EGL,版本 1.4
05-23 15:14:14.628 25157-25881/com.abhishek.speechtotextapp W/art: 验证 void okhttp3.HttpUrl.canonicalize(okio.Buffer, java.lang.String, int, int, java.lang.String, boolean, boolean, boolean, boolean) 花了 114.407ms
05-23 15:14:16.233 25157-25881/com.abhishek.speechtotextapp D/OkHttp: --> POST https://gateway.watsonplatform.net/tone-analyzer/api/v3/tone?version=2016-05 -19 http/1.1(16 字节正文)
05-23 15:14:16.942 25157-25881/com.abhishek.speechtotextapp D/OkHttp: <-- 200 OK https://gateway.watsonplatform.net/tone-analyzer/api/v3/tone?version=2016- 05-19(708ms,未知长度主体)
堆栈跟踪:
05-23 16:25:46.706 14754-15374/com.abhishek.toneanalyzertest W/System.err: java.lang.IllegalArgumentException: 未知模式字符“X”
05-23 16:25:46.706 14754-15374/com.abhishek.toneanalyzertest W/System.err: 在 java.text.SimpleDateFormat.validatePatternCharacter(SimpleDateFormat.java:323)
05-23 16:25:46.706 14754-15374/com.abhishek.toneanalyzertest W/System.err: 在 java.text.SimpleDateFormat.validatePattern(SimpleDateFormat.java:312)
05-23 16:25:46.706 14754-15374/com.abhishek.toneanalyzertest W/System.err: 在 java.text.SimpleDateFormat.(SimpleDateFormat.java:365)
05-23 16:25:46.706 14754-15374/com.abhishek.toneanalyzertest W/System.err: 在 java.text.SimpleDateFormat.(SimpleDateFormat.java:258)
05-23 16:25:46.707 14754-15374/com.abhishek.toneanalyzertest W/System.err:在 com.ibm.watson.developer_cloud.util.DateDeserializer.(DateDeserializer.java:52)
05-23 16:25:46.707 14754-15374/com.abhishek.toneanalyzertest W/System.err: 在 com.ibm.watson.developer_cloud.util.GsonSingleton.registerTypeAdapters(GsonSingleton.java:53)
05-23 16:25:46.707 14754-15374/com.abhishek.toneanalyzertest W/System.err: 在 com.ibm.watson.developer_cloud.util.GsonSingleton.createGson(GsonSingleton.java:42)
05-23 16:25:46.707 14754-15374/com.abhishek.toneanalyzertest W/System.err: 在 com.ibm.watson.developer_cloud.util.GsonSingleton.getGsonWithoutPrettyPrinting(GsonSingleton.java:76)
05-23 16:25:46.707 14754-15374/com.abhishek.toneanalyzertest W/System.err:在 com.ibm.watson.developer_cloud.util.ResponseUtils.getObject(ResponseUtils.java:93)
05-23 16:25:46.707 14754-15374/com.abhishek.toneanalyzertest W/System.err:在 com.ibm.watson.developer_cloud.util.ResponseConverterUtils$3.convert(ResponseConverterUtils.java:79)
05-23 16:25:46.707 14754-15374/com.abhishek.toneanalyzertest W/System.err:在 com.ibm.watson.developer_cloud.util.ResponseConverterUtils$3.convert(ResponseConverterUtils.java:76)
05-23 16:25:46.707 14754-15374/com.abhishek.toneanalyzertest W/System.err:在 com.ibm.watson.developer_cloud.service.WatsonService.processServiceCall(WatsonService.java:479)
05-23 16:25:46.707 14754-15374/com.abhishek.toneanalyzertest W/System.err:在 com.ibm.watson.developer_cloud.service.WatsonService$2.execute(WatsonService.java:254)
05-23 16:25:46.707 14754-15374/com.abhishek.toneanalyzertest W/System.err: 在 com.abhishek.toneanalyzertest.MainActivity$MyThread.run(MainActivity.java:128)
05-23 16:25:46.711 14754-14754/com.abhishek.toneanalyzertest D/AndroidRuntime: 关闭虚拟机
05-23 16:25:46.713 14754-14754/com.abhishek.toneanalyzertest E/AndroidRuntime:致命异常:主进程:com.abhishek.toneanalyzertest,PID:14754 主题:主题:{default=overlay:system, iconPack:system , fontPkg:system, com.android.systemui=overlay:system, com.android.systemui.navbar=overlay:system} java.lang.RuntimeException: 传递结果失败 ResultInfo{who=null, request=1, result=-1 , data=Intent { (has extras) }} to activity {com.abhishek.toneanalyzertest/com.abhishek.toneanalyzertest.MainActivity}: java.lang.NullPointerException: 尝试调用虚拟方法'java.lang.String com.ibm.watson.developer_cloud.tone_analyzer.v3.model.ToneAnalysis.toString()' 在 android.app.ActivityThread.deliverResults(ActivityThread.java:3733) 的 android.app.ActivityThread 的空对象引用上。 handleSendResult(ActivityThread.java:3776) 在 android.app.ActivityThread.-wrap16(ActivityThread.java) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1412) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:148) 在 android.app.ActivityThread.main(ActivityThread.java:5461) 在 java. lang.reflect.Method.invoke(Native Method) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 原因:java.lang.NullPointerException:尝试调用虚拟方法'java.lang.String com.ibm.watson.developer_cloud.tone_analyzer.v3.model。 ToneAnalysis.toString()' 在 com.abhishek.toneanalyzertest.MainActivity.onActivityResult(MainActivity.java:84) 在 android.app.Activity.dispatchActivityResult(Activity.java:6456) 在 android.app.ActivityThread 的空对象引用上。交付结果(ActivityThread.java:3729) 在 android.app.ActivityThread.handleSendResult(ActivityThread.java:3776) 在 android.app.ActivityThread.-wrap16(ActivityThread.java) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1412) 在 android .os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:148) 在 android.app.ActivityThread.main(ActivityThread.java:5461) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:第726章)在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 的 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 调用(本机方法)在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 的 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 调用(本机方法)
我已经包含了 Watson 服务的 JAR 文件,并在清单文件中提供了用户权限。根据上面的错误,我从 API 获得了 OK (200 coe) 响应。以下是代码:
private class cognitiveService extends AsyncTask<Void, Void, Void> {
ToneAnalyzer service = new ToneAnalyzer(ToneAnalyzer.VERSION_DATE_2016_05_19);
service.setUsernameAndPassword("<username>", "<password>");
@Override
protected Void doInBackground(Void... params) {
try {
runOnUiThread(new Runnable() {
@Override
public void run() {
txtOutput.setText("analyzing tone");
}
});
ToneAnalysis tone = service.getTone(txt, null).execute();
System.out.println("Tone: " + tone);
} catch (final Exception e) {
runOnUiThread(new Runnable() {
@Override
public void run() {
txtOutput.setText(e.getLocalizedMessage());
}
});
}
return null;
}
@Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
}
}
}