haijiang
2018-07-10 e48c183a0984908c14eebd9791761d13d9baca2c
提交
3 files added
8 files modified
142 ■■■■■ changed files
app/src/main/AndroidManifest.xml 3 ●●●● patch | view | raw | blame | history
app/src/main/java/com/moral/screen/activity/ChartActivity.java 9 ●●●●● patch | view | raw | blame | history
app/src/main/java/com/moral/screen/activity/DeviceDataActivity.java 8 ●●●●● patch | view | raw | blame | history
app/src/main/java/com/moral/screen/activity/MapActivity.java 47 ●●●● patch | view | raw | blame | history
app/src/main/java/com/moral/screen/activity/SplashActivity.java 38 ●●●●● patch | view | raw | blame | history
app/src/main/java/com/moral/screen/utils/SharedPreferencesUtil.java 12 ●●●●● patch | view | raw | blame | history
app/src/main/res/layout/ac_map_layout.xml 12 ●●●●● patch | view | raw | blame | history
app/src/main/res/layout/ac_splash.xml 6 ●●●●● patch | view | raw | blame | history
app/src/main/res/mipmap-xxxhdpi/start.jpg patch | view | raw | blame | history
app/src/main/res/values/strings.xml 2 ●●● patch | view | raw | blame | history
app/src/main/res/values/styles.xml 5 ●●●●● patch | view | raw | blame | history
app/src/main/AndroidManifest.xml
@@ -29,12 +29,13 @@
        android:supportsRtl="true"
        android:theme="@style/AppTheme"
        tools:replace="android:icon">
        <activity android:name=".activity.LoginActivity" android:screenOrientation="portrait">
        <activity android:name=".activity.SplashActivity" android:screenOrientation="portrait" android:theme="@style/AppSplash">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".activity.LoginActivity" android:screenOrientation="portrait"/>
        <activity android:name=".activity.MapActivity" android:screenOrientation="portrait"/>
        <activity android:name=".activity.DeviceDataActivity" android:screenOrientation="portrait"/>
        <activity android:name=".activity.ChartActivity" android:screenOrientation="portrait"/>
app/src/main/java/com/moral/screen/activity/ChartActivity.java
@@ -264,4 +264,13 @@
            }
        });
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
        if(timer!=null){
            timer.cancel();
            timer =null;
        }
    }
}
app/src/main/java/com/moral/screen/activity/DeviceDataActivity.java
@@ -157,4 +157,12 @@
        });
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
        if(timer!=null){
            timer.cancel();
            timer =null;
        }
    }
}
app/src/main/java/com/moral/screen/activity/MapActivity.java
@@ -31,13 +31,15 @@
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Timer;
import java.util.TimerTask;
/**
 * Created by hjzhang on 2018/7/2.
 */
public class MapActivity extends BaseActivity {
    private TextView tv_left;
    private TextView tv_left,tv_right;
    private MapView bmapView;
    private BaiduMap mBaiduMap;
    BitmapDescriptor bdNormal = BitmapDescriptorFactory
@@ -57,6 +59,22 @@
    private ImageView iv_close;
    private LinearLayout ll_pop;
    private DeviceBean curDeviceBean;
    private Timer timer;
    /**
     * 计时器
     */
    private boolean isFinish = false;
    private void showData() {
        timer = new Timer();
        timer.schedule(new TimerTask() {
            @Override
            public void run() {
                if(!isFinish){
                    getData(false);
                }
            }
        },0,10*1000);
    }
    @Override
    protected void getBundleExtras(Bundle extras) {
@@ -70,6 +88,7 @@
    @Override
    protected void initViews() {
        tv_left = findView(R.id.tv_left);
        tv_right = findView(R.id.tv_right);
        bmapView = findView(R.id.bmapView);
        popView = LayoutInflater.from(this).inflate(R.layout.pop_layout,null);
        tv_name = popView.findViewById(R.id.tv_name);
@@ -102,17 +121,25 @@
                startActivity(intent);
            }
        });
        tv_right.setOnClickListener(this);
    }
    @Override
    protected void initData() {
        getData();
        getData(true);
        showData();
    }
    @Override
    protected void processClick(View view) {
        switch (view.getId()){
            case R.id.tv_left:
                finish();
                break;
            case R.id.tv_right:
                MainApp.theApp.mSharedPreferencesUtil.exitLogin();
                Intent intent = new Intent(MapActivity.this,LoginActivity.class);
                startActivity(intent);
                finish();
                break;
        }
@@ -152,7 +179,7 @@
    /**
     * 标注地图
     */
    private void showMapData(){
    private void showMapData(boolean show){
        mBaiduMap.clear();
        MarkerOptions mo = null;
        Marker mMarker = null;
@@ -184,7 +211,7 @@
                        .zIndex(i);
            }
            // 掉下动画
            mo.animateType(MarkerOptions.MarkerAnimateType.drop);
            mo.animateType(MarkerOptions.MarkerAnimateType.grow);
            mMarker = (Marker) (mBaiduMap.addOverlay(mo));
            mkList.add(mMarker);
        }
@@ -211,12 +238,16 @@
        bdC.recycle();
        super.onDestroy();
        bmapView.onDestroy();
        if(timer!=null){
            timer.cancel();
            timer =null;
        }
    }
    private void getData() {
    private void getData(final boolean show) {
        HashMap<String, String> params = new HashMap<>();
        params.put("organizationId", MainApp.theApp.orgId+"");
        mHttpUtils.doGet(API.DEVICES, params, CacheMode.DEFAULT, true, new HttpCallBack() {
        mHttpUtils.doGet(API.DEVICES, params, CacheMode.DEFAULT, show, new HttpCallBack() {
            @Override
            public void onSuccess(String res, String msg) {
                if (progressDialog.isShowing()) {
@@ -227,6 +258,7 @@
                    deviceList.clear();
                    deviceList.addAll(temp);
                }
                if(show){
                if(deviceList.size()>0){
                    DeviceBean bean = deviceList.get(0);
                    LatLng ll = new LatLng(bean.getLatitude(),
@@ -235,7 +267,8 @@
                    builder.target(ll).zoom(18.0f);
                    mBaiduMap.animateMapStatus(MapStatusUpdateFactory.newMapStatus(builder.build()));
                }
                showMapData();
                }
                showMapData(show);
            }
            @Override
app/src/main/java/com/moral/screen/activity/SplashActivity.java
New file
@@ -0,0 +1,38 @@
package com.moral.screen.activity;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import com.moral.screen.MainApp;
import com.moral.screen.R;
public class SplashActivity extends Activity implements Runnable {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.ac_splash);
        Thread delayThread = new Thread(this);
        delayThread.start();
    }
    @Override
    public void run() {
        try {
            Thread.sleep(1000);
        } catch(InterruptedException e) {
            e.printStackTrace();
        }
        if(MainApp.theApp.orgId==0){
            Intent intent = new Intent(this, LoginActivity.class);
            startActivity(intent);
        }else{
            Intent intent = new Intent(this, MapActivity.class);
            startActivity(intent);
        }
        finish();
    }
}
app/src/main/java/com/moral/screen/utils/SharedPreferencesUtil.java
@@ -3,6 +3,10 @@
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import com.moral.screen.MainApp;
import com.moral.screen.activity.MapActivity;
public class SharedPreferencesUtil {
    private Context mContext;
    public final static String SP_LOGIN_USER_KEY = "login_user";
@@ -23,6 +27,14 @@
        return orgId;
    }
    public void exitLogin(){
        SharedPreferences preferences = mContext.getSharedPreferences(SP_LOGIN_USER_KEY, Context.MODE_PRIVATE);
        Editor editor = preferences.edit();
        editor.putInt("orgId",0);
        editor.commit();
        MainApp.theApp.orgId=0;
    }
    /**
     * 保存是否第一次登陆
app/src/main/res/layout/ac_map_layout.xml
@@ -33,6 +33,18 @@
            android:singleLine="true"
            android:text="监测地点"
            android:textSize="17sp" />
        <TextView
            android:id="@+id/tv_right"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:gravity="center"
            android:textColor="@color/white"
            android:drawablePadding="@dimen/x4"
            android:textSize="14sp"
            android:text="退出登录"
            android:layout_alignParentRight="true"
            android:paddingRight="@dimen/x16"
            />
    </RelativeLayout>
    <RelativeLayout
        android:layout_width="match_parent"
app/src/main/res/layout/ac_splash.xml
New file
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
</LinearLayout>
app/src/main/res/mipmap-xxxhdpi/start.jpg
app/src/main/res/values/strings.xml
@@ -1,3 +1,3 @@
<resources>
    <string name="app_name">screen</string>
    <string name="app_name">大气智慧监测</string>
</resources>
app/src/main/res/values/styles.xml
@@ -8,5 +8,10 @@
        <item name="colorAccent">@color/colorAccent</item>
    </style> <style name="AppTheme" parent="Base.Theme.Design">
    </style>
    <style name="AppSplash" parent="android:Theme">
        <item name="android:windowBackground">@mipmap/start</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowFullscreen">true</item>
    </style>
</resources>