我的android studio新线程(新的Runnable)不起作用

问题描述 投票:0回答:1

我想在 android studio 中使用 GET() 连接。 这是我在 MainActivity.java 中的代码。

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        data=findViewById(R.id.bright);

        if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.M){
            requestPermissions(new String[]{"android.permission.INTERNET"},1);
            Gushen();
        }
    }
    public void Gushen(){
        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    OkHttpClient client = new OkHttpClient();
                    Log.w("sss","gushen");
                    Request request = new Request.Builder().url("http://iot-api.heclouds.com/thingmodel/query-thing-model?product_id=w50WLDzGBb").build();
                    Response response = client.newCall(request).execute();
                    String responseData = response.body().string();
                    Log.w("sss",responseData);
                    parseJSONWithGSON(responseData);


                    JsonRootBean app = new Gson().fromJson(responseData, JsonRootBean.class);
                    List<Datastreams> streams = app.getData().getDatastreams();
                    List<Datapoints> points = streams.get(0).getDatapoints();
                    value = points.get(0).getValue();
                    data.post(new Runnable() {
                        @Override
                        public void run() {
                            data.setText(String.format("Light is:%s", value));
                        }
                    });
                } catch (IOException e) {
                    e.printStackTrace();}
            }
        });
    }

我无法获取 " Log.w("sss","gushen"); “在我的 logcat 中,因为它在新线程中。而且我似乎也没有连接到这个 URL。 这是我的 logcat 的屏幕截图。 enter image description here

如何成功使用我的新线程并在 logcat 中查看它的 Log.w 结果? 而且我不知道是否使用 GET() 连接到 URL。

java android multithreading get
1个回答
0
投票

您忘记启动线程:在方法的倒数第二行中,将

});
替换为
}).start();

© www.soinside.com 2019 - 2024. All rights reserved.