haijiang
2018-07-17 63b87b529196c056fb4d96a58eded3936d3445f2
app/src/main/java/com/moral/screen/activity/MapActivity.java
@@ -1,8 +1,12 @@
package com.moral.screen.activity;
import android.Manifest;
import android.content.Intent;
import android.graphics.Point;
import android.os.AsyncTask;
import android.os.Build;
import android.os.Bundle;
import android.os.Looper;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
@@ -28,17 +32,22 @@
import com.moral.screen.model.DeviceBean;
import com.moral.screen.R;
import com.moral.screen.base.BaseActivity;
import com.moral.screen.update.UpdateManager;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;
import pub.devrel.easypermissions.AfterPermissionGranted;
import pub.devrel.easypermissions.EasyPermissions;
/**
 * Created by hjzhang on 2018/7/2.
 */
public class MapActivity extends BaseActivity {
public class MapActivity extends BaseActivity implements EasyPermissions.PermissionCallbacks{
    private TextView tv_left,tv_right;
    private MapView bmapView;
    private BaiduMap mBaiduMap;
@@ -128,6 +137,14 @@
    protected void initData() {
        getData(true);
        showData();
        /**
         * 版本更新
         */
        if (Build.VERSION.SDK_INT >= 11) {
            new checkUpdateTask().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
        } else {
            new checkUpdateTask().execute();
        }
    }
    @Override
@@ -211,7 +228,8 @@
                        .zIndex(i);
            }
            // 掉下动画
            mo.animateType(MarkerOptions.MarkerAnimateType.grow);
            if(show)
               mo.animateType(MarkerOptions.MarkerAnimateType.grow);
            mMarker = (Marker) (mBaiduMap.addOverlay(mo));
            mkList.add(mMarker);
        }
@@ -287,4 +305,57 @@
        });
    }
    @Override
    public void onPermissionsGranted(int requestCode, List<String> perms) {
        if (requestCode == WRITE_EXTERNAL_STORAGE) {
            manager.showNoticeDialog();
        }
    }
    @Override
    public void onPermissionsDenied(int requestCode, List<String> perms) {
    }
    private final static int WRITE_EXTERNAL_STORAGE = 0x01;
    @AfterPermissionGranted(WRITE_EXTERNAL_STORAGE)
    public void updateAPP() {
        String[] perms = {Manifest.permission.WRITE_EXTERNAL_STORAGE};
        if (EasyPermissions.hasPermissions(this, perms)) {
            // Already have permission, do the thing
            manager.showNoticeDialog();
        } else {
            // Do not have permissions, request them now
            EasyPermissions.requestPermissions(this, "温馨提示,版本升级需要写存储权限!",
                    WRITE_EXTERNAL_STORAGE, perms);
        }
    }
    UpdateManager manager = new UpdateManager(MapActivity.this);
    private class checkUpdateTask extends AsyncTask<String, Void, String> {
        @Override
        protected String doInBackground(String... params) {
            Looper.prepare();
            // 检查软件更新
            manager.checkUpdateJson();
            Looper.loop();
            return null;
        }
        @Override
        protected void onPostExecute(String result) {
        }
        @Override
        protected void onPreExecute() {
        }
        @Override
        protected void onProgressUpdate(Void... values) {
        }
    }
}