package cn.com.basic.face.base;
|
|
import android.app.Application;
|
import android.content.ComponentName;
|
import android.content.Context;
|
import android.content.Intent;
|
import android.content.ServiceConnection;
|
import android.net.ConnectivityManager;
|
import android.net.NetworkInfo;
|
import android.os.IBinder;
|
|
import cn.com.basic.face.discern.entity.Device;
|
import cn.com.basic.face.service.CheckInMng;
|
import cn.com.basic.face.service.DictionaryMng;
|
import cn.com.basic.face.service.DeviceMng;
|
import cn.com.basic.face.service.RegisterMng;
|
import cn.com.basic.face.service.SurveillanceMng;
|
import cn.com.basic.face.util.WindowsUtil;
|
|
import com.facebook.drawee.backends.pipeline.Fresco;
|
import com.lzy.okhttputils.OkHttpUtils;
|
import com.lzy.okhttputils.model.HttpHeaders;
|
import com.lzy.okhttputils.model.HttpParams;
|
|
import org.xutils.x;
|
|
public class BaseApplication extends Application{
|
|
private static BaseApplication application;
|
|
public static BaseApplication getInstance() {
|
return application;
|
}
|
|
private Device androidDevice;
|
private Device camera1;
|
private Device camera2;
|
|
|
public static boolean deviceAvailable = false;
|
|
public void setAndroidDevice(Device device) {
|
this.androidDevice = device;
|
if (device != null && device.getDeviceId() != null && !"".equals(device.getDeviceId())) {
|
deviceAvailable = true;
|
DictionaryMng.getInstance().loadAllDictionaryData();
|
}
|
}
|
|
public void setCamera1(Device camera1) {
|
this.camera1 = camera1;
|
if (camera1 != null && camera1.getDeviceId() != null && !"".equals(camera1.getDeviceId())) {
|
DictionaryMng.getInstance().loadAllDictionaryData();
|
}
|
}
|
|
public void setCamera2(Device camera2) {
|
this.camera2 = camera2;
|
if (camera2 != null && camera2.getDeviceId() != null && !"".equals(camera2.getDeviceId())) {
|
DictionaryMng.getInstance().loadAllDictionaryData();
|
}
|
}
|
|
public Device getAndroidDevice() {
|
if (androidDevice == null) {
|
androidDevice = new Device();
|
}
|
return androidDevice;
|
}
|
|
@Override
|
public void onCreate() {
|
super.onCreate();
|
x.Ext.init(this);
|
Fresco.initialize(this);
|
initOkHttpUtils();
|
application = this;
|
DeviceMng.getInstance().findDevice();
|
|
}
|
|
private void initOkHttpUtils() {
|
HttpHeaders headers = new HttpHeaders();
|
headers.put("commonHeaderKey1", "commonHeaderValue1"); //所有的 header 都 不支持 中文
|
headers.put("commonHeaderKey2", "commonHeaderValue2");
|
HttpParams params = new HttpParams();
|
params.put("commonParamsKey1", "commonParamsValue1"); //所有的 params 都 支持 中文
|
params.put("commonParamsKey2", "这里支持中文参数");
|
//必须调用初始化
|
OkHttpUtils.init(this);
|
}
|
|
|
public boolean networkNotAvailable() {
|
boolean connected = false;
|
// ConnectivityManager connectivityManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
|
// if(connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED ||
|
// connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.CONNECTED) {
|
// connected = true;
|
// }
|
// if (connected) {
|
// sendOfflineDataToServer();
|
// }
|
return !connected;
|
}
|
|
public boolean networkAvailable() {
|
boolean connected = false;
|
// ConnectivityManager connectivityManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
|
// if(connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED ||
|
// connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.CONNECTED) {
|
// connected = true;
|
// }
|
// if (connected) {
|
// sendOfflineDataToServer();
|
// }
|
return connected;
|
}
|
|
public void sendOfflineDataToServer() {
|
RegisterMng.getInstance().sendOfflineRegisterToServer();
|
if (RegisterMng.getInstance().hasOfflineRegisterData()) {
|
return;
|
}
|
CheckInMng.getInstance().sendOfflineCheckInToServer();
|
if (CheckInMng.getInstance().hasOfflineCheckInData()) {
|
return;
|
}
|
SurveillanceMng.getInstance().sendOfflineUnknownToServer();
|
}
|
|
|
}
|