如何将asynctask的结果提取到mainactivity中

时间:2018-01-11 09:28:13

标签: android android-asynctask

我正在尝试制作一个翻译应用程序并且所有代码都运行良好但在最后一部分我的应用程序崩溃,同时从asynctask获取结果到mainactivity,我在这里做错了

SiteData.objects.prefetch_related('sitesubnets_set')

我已经创建了一个AsyncResponse接口,并在其中添加了一个方法processFinish(String output)

enter code here
MainActivity.java
b.setOnClickListener(new View.OnClickListener(){

            @Override
            public void onClick(View p1)
            {
                // TODO: Implement this method
                texttotranslate = et.getText().toString();
                Log.d("text:", "" + texttotranslate);

                OkhttpHandler myTask = new OkhttpHandler(new AsyncResponse(){

                        @Override
                        public void processFinish(String output)
                        {
                            // TODO: Implement this method
                            Log.d("Response from asynctask", (String) output);
                            t.setText((String)output);
                        }


                    });    
                myTask.execute(texttotranslate, lang_pair);

            }
        });

启动时我的应用程序崩溃,我的logcat中没有显示任何错误。

2 个答案:

答案 0 :(得分:0)

您应该使用yandex API_KEY替换my-key

String key = "my-key";

其他一切都很好我尝试了你的代码

https://github.com/naveendew/yandex_translate_example

答案 1 :(得分:0)

我不小心从libs文件夹中删除了okio库,这就是为什么我的应用程序崩溃了,所以现在它已经解决了。 因此,如果有人使用okhttp库,那么也添加okio库。