android根据http请求更改textview文本

时间:2016-09-02 06:25:32

标签: android nanohttpd

我想在android中创建一个http服务器,它根据请求提供事件(html / png ..)。

示例:如果请求是/maketoast android进行吐司或请求是/chanhetext android更改特定的textview文本。

重点是:我已经通过Nanohttpd创建了一个服务器。它提供文件,但它不会发生任何事件,例如制作吐司或更改textview文本。

这是Nanohttpd服务方法

   public Response serve(IHTTPSession session) {
       String msg = "<html><body><h1>Hello server</h1>\n";
       Map<String, String> parms = session.getParms();
       if (parms.get("username") == null) {
           msg += "<form action='?' method='get'>\n  <p>Your name: <input type='text' name='username'></p>\n" + "</form>\n";
       } else {
           msg += "<p>Hello, " + parms.get("username") + "!</p><img src=max.png/>";
       }
       //Toast.makeText(mContext, "Helloooooo...!!!", Toast.LENGTH_SHORT).show();
       return newFixedLengthResponse( msg + "</body></html>\n" );
    }

当我尝试使吐司服务器冻结并且没有给出任何回复时。任何人都可以告诉我我是如何制作这种东西的。

2 个答案:

答案 0 :(得分:0)

尝试:

getActivity().runOnUiThread(new Runnable() {
        @Override
        public void run() {
           Toast.makeText(mContext, "Helloooooo...!!!", Toast.LENGTH_SHORT).show();
        }
    });

答案 1 :(得分:0)

将您的Nanohttpd放入服务中,以便您可以将LocalBroadCast发送到您的活动以显示Toast或任何其他UI响应。