当前位置: 首页 > 知识库问答 >
问题:

okHttp:为什么我的应用程序崩溃没有得到响应

盛承
2023-03-14

主要活动

公共类MainActivity扩展AppCompatActivity{String response;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    }
  try {
      response = example.run();
      Toast.makeText(MainActivity.this, "response is :" + response, Toast.LENGTH_LONG).show();

  } catch (IOException e) {
      Toast.makeText(MainActivity.this, "error" + e, Toast.LENGTH_LONG).show();

   }
  }
 }

公共类GetExample{OkHttpClient客户端;

public String run() throws IOException {
     client = new OkHttpClient();
    Request request = new Request.Builder().url("http://grocit.pe.hu/getcategories.php").build();
    Response response = client.newCall(request).execute();
    return response.body().string();
}
}

Xml文件

<RelativeLayout
  android:layout_height="match_parent"
   android:layout_width="match_parent"
    xmlns:android="http://schemas.android.com/apk/res/android">
<Button
    android:layout_width="300dp"
    android:layout_height="300dp"
    android:onClick="click"
    android:text="click me!"
    />
</RelativeLayout>

共有1个答案

谭志用
2023-03-14

对于这样的崩溃问题,您可以添加您的崩溃日志。我认为NetworkonMaintHreadException.当应用程序尝试在其主线程上执行网络操作时,会引发此异常。您的网络操作必须在另一个线程上执行,如:

    Thread thread = new Thread() {
            @Override
            public void run() {
                // your run method
            }
        };
    thread.start();
 类似资料:
  • 应用程序崩溃,我会得到以下错误: 致命异常:主进程:com.example.ayyan.JellyBeanEstimator,pid:2960 java.lang.RuntimeException:无法启动活动 ComponentInfo{com.example.ayyan.JellyBeanEstimator/com.example.ayyan.JellyBeanEstimator.MainAc

  • 我最近开始在registfit/okhttp上遇到问题。每当应用程序执行一个请求时,它就会崩溃,并出现错误:

  • 注意:在我添加广告之前,我的应用程序运行良好,使用相同的方法 当我试图将adview添加到我的应用程序时,它会使我的应用程序崩溃,所以我删除了它,但仍然给我这个这是logcat 10-12 21:33:19.765 4993-4993/com。fm360。almorfis E/AndroidRuntime:致命异常:主进程:com。fm360。阿尔莫菲斯,PID:4993爪哇。lang.Runti

  • 我每次都会得到新的回应。 我想知道为什么用第一种方法得到同样的reponse?

  • 每当我请求权限时,我的应用程序就会崩溃。作为清单标记的子项,我在清单中定义了正确的使用权限。它没有给出任何错误,只是一个弹出窗口说包安装程序已经停止,监视器中有一行说“sendUserActionEvent()mView==null”,我不确定这与崩溃有关。 这是我请求权限的片段: 最低sdk设置为23,在三星Galaxy S7上进行测试。 你可以在这里看到完整的代码https://github.