mirror of
https://gitee.com/beecue/fastbee.git
synced 2025-12-18 08:55:53 +08:00
添加安卓端基本功能
This commit is contained in:
114
android/app/src/main/java/com/kerwin/wumei/MyApp.java
Normal file
114
android/app/src/main/java/com/kerwin/wumei/MyApp.java
Normal file
@@ -0,0 +1,114 @@
|
||||
package com.kerwin.wumei;
|
||||
|
||||
import android.app.Application;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
import android.location.LocationManager;
|
||||
import android.net.wifi.WifiManager;
|
||||
import android.os.Build;
|
||||
|
||||
import androidx.lifecycle.LifecycleOwner;
|
||||
import androidx.lifecycle.MutableLiveData;
|
||||
import androidx.lifecycle.Observer;
|
||||
import androidx.multidex.MultiDex;
|
||||
|
||||
import com.kerwin.wumei.BuildConfig;
|
||||
import com.kerwin.wumei.utils.sdkinit.ANRWatchDogInit;
|
||||
import com.kerwin.wumei.utils.sdkinit.UMengInit;
|
||||
import com.kerwin.wumei.utils.sdkinit.XBasicLibInit;
|
||||
import com.kerwin.wumei.utils.sdkinit.XUpdateInit;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author xuexiang
|
||||
* @since 2018/11/7 下午1:12
|
||||
*/
|
||||
public class MyApp extends Application {
|
||||
|
||||
private static MyApp app;
|
||||
private MutableLiveData<String> mBroadcastData;
|
||||
|
||||
private BroadcastReceiver mReceiver = new BroadcastReceiver() {
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
String action = intent.getAction();
|
||||
if (action == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
switch (action) {
|
||||
case WifiManager.NETWORK_STATE_CHANGED_ACTION:
|
||||
case LocationManager.PROVIDERS_CHANGED_ACTION:
|
||||
mBroadcastData.setValue(action);
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@Override
|
||||
protected void attachBaseContext(Context base) {
|
||||
super.attachBaseContext(base);
|
||||
//解决4.x运行崩溃的问题
|
||||
MultiDex.install(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreate() {
|
||||
super.onCreate();
|
||||
initLibs();
|
||||
|
||||
app = this;
|
||||
mBroadcastData = new MutableLiveData<>();
|
||||
IntentFilter filter = new IntentFilter(WifiManager.NETWORK_STATE_CHANGED_ACTION);
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
|
||||
filter.addAction(LocationManager.PROVIDERS_CHANGED_ACTION);
|
||||
}
|
||||
registerReceiver(mReceiver, filter);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTerminate() {
|
||||
super.onTerminate();
|
||||
unregisterReceiver(mReceiver);
|
||||
}
|
||||
|
||||
public static MyApp getInstance() {
|
||||
return app;
|
||||
}
|
||||
|
||||
public void observeBroadcast(LifecycleOwner owner, Observer<String> observer) {
|
||||
mBroadcastData.observe(owner, observer);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 初始化基础库
|
||||
*/
|
||||
private void initLibs() {
|
||||
XBasicLibInit.init(this);
|
||||
|
||||
XUpdateInit.init(this);
|
||||
|
||||
//运营统计数据运行时不初始化
|
||||
if (!MyApp.isDebug()) {
|
||||
UMengInit.init(this);
|
||||
}
|
||||
|
||||
//ANR监控
|
||||
ANRWatchDogInit.init();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return 当前app是否是调试开发模式
|
||||
*/
|
||||
public static boolean isDebug() {
|
||||
return BuildConfig.DEBUG;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user