android本地serverandroidasync依赖库的简单使用

android本地serverandroidasync依赖库的简单使用,第1张

概述不在赘述什么是androidasync有兴趣的话可以自己百度搜索一下直接贴上代码每个方法都有注释importandroid.content.Context;importandroid.widget.Toast;importcom.koushikdutta.async.http.server.AsyncHttpServer;importcom.koushikdutta.async.http.server.Asyn

不在赘述什么是androIDasync 有兴趣的话可以自己百度搜索一下

直接贴上代码 每个方法都有注释

import androID.content.Context;import androID.Widget.Toast;import com.koushikdutta.async.http.server.AsynchttpServer;import com.koushikdutta.async.http.server.AsynchttpServerRequest;import com.koushikdutta.async.http.server.AsynchttpServerResponse;import com.koushikdutta.async.http.server.httpServerRequestCallback;import org.Json.JsONException;import org.Json.JsONObject;import cn.zjq.helpinstall.utils.InstallApkUtils;/** * @Description: httpServer简单使用 * @Author: zjq * @CreateDate: 2020/12/18 15:43 */public class TesthttpServer implements httpServerRequestCallback {    AsynchttpServer mServer = new AsynchttpServer();    private Context context;    private static TesthttpServer testhttpServer;    public static TesthttpServer getInstance() {        if (testhttpServer == null) {            synchronized (TesthttpServer.class) {                if (testhttpServer == null) {                    testhttpServer = new TesthttpServer();                }            }        }        return testhttpServer;    }    /**     * 初始化server     *     * @param context     */    public voID initServer(Context context) {        this.context = context;    }    /**     * 启动服务     * 9000为监听的端口号     */    public voID start() {        Toast.makeText(context, "启动服务成功", Toast.LENGTH_SHORT).show();        mServer.Listen(9000);        mServer.get("/install", this);        mServer.post("/install", this);    }    /**     * 实现 httpServerRequestCallback接口方法     *     * @param request     * @param response     */    @OverrIDe    public voID onRequest(AsynchttpServerRequest request, AsynchttpServerResponse response) {        String method = request.getmethod();        if ("GET".equalsIgnoreCase(method)) {            dogetmethod(request, response);        } else if ("POST".equalsIgnoreCase(method)) {            doPostMethod(request, response);        }    }    /**     * 处理POST请求的方法     *     * @param request  请求     * @param response 响应     */    private voID doPostMethod(AsynchttpServerRequest request, AsynchttpServerResponse response) {    }    /**     * 处理GET请求的方法 监听请求install接口     *     * @param request     * @param response     */    private voID dogetmethod(AsynchttpServerRequest request, AsynchttpServerResponse response) {        if ("/install".equalsIgnoreCase(request.getPath())) {            handleDevicesRequest(response);        } else {            handleInvalIDRequest(response);        }    }    /**     * 处理无效的请求     *     * @param response     */    private voID handleInvalIDRequest(AsynchttpServerResponse response) {        try {            JsONObject Json = new JsONObject();            try {                Json.put("error", "InvalID API");                response.send(Json);            } catch (JsONException e) {                e.printstacktrace();            }        } catch (Exception e) {            e.printstacktrace();        }    }    /**     * 响应设备有效的请求     *     * @param response     */    private voID handleDevicesRequest(AsynchttpServerResponse response) {        //此处InstallApkUtils为本地工具类,可忽略        InstallApkUtils instance = InstallApkUtils.getInstance();        instance.initInstall(context);        String result = instance.installApkMethod();        try {            JsONObject JsonObject = new JsONObject();            JsonObject.put("code", "200");            JsonObject.put("err", "null");            JsonObject.put("msg", result);            response.send(JsonObject);        } catch (Exception e) {            e.printstacktrace();        }    }}

测试方法

1.AS运行此程序到手机

2.手机和电脑连接至统一wifi

3.在浏览器中输入相对应的手机ip地址与相应端口

如下  我的手机ip地址为192.168.3.1 浏览器中输入

192.168.3.1:9000/install 

成功即可返回对应Json

调用方法

TesthttpServer instance = TesthttpServer.getInstance();instance.initServer(YibaService.this);instance.start();

 

总结

以上是内存溢出为你收集整理的android 本地server androidasync依赖库的简单使用全部内容,希望文章能够帮你解决android 本地server androidasync依赖库的简单使用所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1056568.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存