android开发中数据查看web工具(数据库共享参数和data目录文件)

前提(可以略过)

旧项目已停止更新,新项目远程数据控制,修复bug,支持云端控制

android开发中需要对数据库、共享参数和文件(data目录非sdcard目录)进行操作,简单App配置信息存储使用共享参数就可以了,对数据量和效率有要求的使用数据库,例如IM消息,数据量大使用频繁。
但是,我们开发初期写的代码不敢说百分百对,这时候我们要验证一下数据是否正常写入(主要针对新手),或者某个功能不对,我们要查看数据是否符合逻辑(前端还是后台的锅得分清楚)。

新版优化了不少:

配置库引用就可以自动开启服务了,手动初始化服务方式依然保留,自由选择;

自动开启服务后,智能识别Json工具,优先使用FastJson,其次是Gson,不给开发者带来新的库,也不会引入版本。

超级简单的引入方法

compile 'com.itgowo:android-WebDebugTool:1.0.10'
debugcompile 'com.itgowo:android-WebDebugTool:1.0.10'  //推荐

Android Gradle plugin 3.0或更高
  debugApi 'com.itgowo:android-WebDebugTool:1.0.10'  //推荐
  api 'com.itgowo:android-WebDebugTool:1.0.10'

介绍

说了这么多,我要介绍一个工具,App添加依赖再做简单初始化就可以使用了,log会打印出手机联网的wifi地址(模拟器和数据不行,代码是只获取了wifi的ip)。

Github欢迎star https://github.com/hnsugar/android-debugdata-webtool

工具是以android App作为服务器端,直接使用Socket监听获取数据,并对数据流做http报文解析,数据交互使用POST方式,文件请求使用GET方式,也实现了ajax跨域请求options,web端使用JQuery、BootStrap和DataTables框架,资源放到app内部,无需联网也可访问。为了不给使用者引入可能不需要的库,所以内部json工具并未实现,需要在初始化方法的第四个参数中实现两个Json文本和对象的转化,demo中使用的是fastjson库。

初始化方法

第一个参数为context,第二个参数为端口,第三个参数为线程模式(是否是多线程),第四个为服务器状态监听。

public static void initialize(Context context, int mPortNumber, boolean isMultMode, onDebugToolListener mOnDebugToolListener) {
  DebugDataTool.initialize(this, 8088, false, new onDebugToolListener() {

              @Override
              public void onSystemMsg(final String mS) {
                //系统信息,主要是一些提示性信息,例如服务器地址
              }

              @Override
              public String onObjectToJson(Object mObject) {
              //对象转换为json文本,本支持库为了尽量少的因为第三方,降低耦合性,由使用者定义json工具,可以用Gson或者fastjson等,demo使用的是fastjson。
                  return JSON.toJSONString(mObject);
              }

              @Override
              public  T onJsonStringToObject(String mJsonString, Class mClass) {
              //文本转换为Json对象,本支持库为了尽量少的因为第三方,降低耦合性,由使用者定义json工具,可以用Gson或者fastjson等,demo使用的是fastjson。
                  return JSON.parseObject(mJsonString, mClass);
              }

              @Override
              public void onGetRequest(String mRequest, final HttpRequest mHttpRequest) {
              //服务器收到请求,文件请求只打印请求path,数据接口交互HTTPRequest包含报文全部信息
              }


              @Override
              public void onResponse(final String mResponse) {
              //服务器返回给页面的信息,只有跨域请求Options和POST数据交互时才会触发,文件下载不触发。
              }

              @Override
              public void onError(final String mTip, final Throwable mThrowable) {
              //捕捉到的服务器异常
          });
        

功能划分为3部分:

1。数据库操作(增删改查,数据库文件下载,删除在文件管理那里可以实现)

android开发中数据查看web工具(数据库共享参数和data目录文件)_第1张图片
img1.png

2。共享参数操作(增删改查,与数据库基本一致,文件下载,删除在文件管理那里可以实现)

android开发中数据查看web工具(数据库共享参数和data目录文件)_第2张图片
img2.png

3。文件操作(文件下载,文件删除,根目录是App的data目录)

android开发中数据查看web工具(数据库共享参数和data目录文件)_第3张图片
img3.png
android开发中数据查看web工具(数据库共享参数和data目录文件)_第4张图片
img5.png

依赖

maven依赖

  
    com.itgowo
    android-WebDebugTool
    1.0.1
    pom
  

Gradle依赖

  compile 'com.itgowo:android-WebDebugTool:1.0.1'

Demo界面(包含日志功能)

android开发中数据查看web工具(数据库共享参数和data目录文件)_第5张图片
img6.png

个人比较懒,相信大家看图就明白了是做什么的,具体使用方法和接口api什么的请到Github上看,欢迎提建议。

你可能感兴趣的:(android开发中数据查看web工具(数据库共享参数和data目录文件))