安卓论坛

标题: 自定义更新组件 [打印本页]

作者: admin    时间: 2017-1-25 13:47
标题: 自定义更新组件
1:注册广播配置服务
  1.    /**
  2.      * 注册广播
  3.      */
  4.     private void registerBroadcast() {
  5.         mUpdateReceiver = new UpdateReceiver(false);
  6.         mIntentFilter = new IntentFilter(UpdateReceiver.UPDATE_ACTION);
  7.         this.registerReceiver(mUpdateReceiver, mIntentFilter);
  8.     }

  9.     /**
  10.      * 结束广播
  11.      */
  12.     private void unRegisterBroadcast() {
  13.         try {
  14.             this.unregisterReceiver(mUpdateReceiver);
  15.         } catch (Exception e) {
  16.             e.printStackTrace();
  17.         }
  18.     }
复制代码
  1.   <service
  2.             android:name=".service.UpdateService"
  3.             android:enabled="true"
  4.             android:process=":fengniao" />
复制代码


2:配置更新组件

  1.     private UpdateReceiver mUpdateReceiver;
  2.     private IntentFilter mIntentFilter;

  3. registerBroadcast();
  4.         checkUpdate();
复制代码
3:checkUpdate

  1.     /**
  2.      * 检查版本更新
  3.      */
  4.     protected void checkUpdate(){
  5.           String url = App.apiHost +"/index/checkVer";
  6.           StringRequest stringRequest = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
  7.               @Override
  8.               public void onResponse(String s) {
  9.                   try {
  10.                       JSONObject info = new JSONObject(s);
  11.                       Log.i("TAG",info.toString());
  12.                       int status = info.getInt("status");
  13.                       if(status == 1) {
  14.                           UpdateInformation.serverVersion = Integer.parseInt(info.getString("serverVersion"));
  15.                           UpdateInformation.serverFlag = Integer.parseInt(info.getString("serverFlag"));
  16.                           UpdateInformation.lastForce = Integer.parseInt(info.getString("lastForce"));
  17.                           UpdateInformation.updateurl = info.getString("updateurl");
  18.                           UpdateInformation.upgradeinfo = info.getString("upgradeinfo");//升级信息
  19.                           UpdateInformation.appname = info.getString("appname");
  20.                           sendBroadcast(new Intent(UpdateReceiver.UPDATE_ACTION));
  21.                       }
  22.                       Log.i("TAG","serverVersion"+UpdateInformation.serverVersion);
  23.                   } catch (JSONException e) {
  24.                       e.printStackTrace();
  25.                   }

  26.               }
  27.           }, new Response.ErrorListener() {
  28.               @Override
  29.               public void onErrorResponse(VolleyError error) {

  30.               }
  31.           });
  32.         mQueue.add(stringRequest);
  33.     }
复制代码









欢迎光临 安卓论坛 (http://android.hh85.com/) Powered by Discuz! X3.2