This commit is contained in:
fengjignqi
2026-05-16 16:19:39 +08:00
commit 1b1575eb8a
1632 changed files with 242221 additions and 0 deletions

View File

@@ -0,0 +1,187 @@
package com.ckkj.water;
import android.app.Activity;
import android.app.ActivityManager;
import android.app.Application;
import android.content.Context;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.gson.Gson;
import com.ckkj.water.fate.util.LunarDateLoader;
import com.ckkj.water.login.entity.LoginEntity;
import com.ckkj.water.network.NetWorkManager;
import com.ckkj.water.utils.dataUtil.SharePreUtil;
import com.ckkj.water.utils.manager.MingDengUserInfoManager;
import java.util.List;
import me.jessyan.autosize.AutoSizeConfig;
public class MyApplication extends Application {
private static Context context;
private static Activity mLaunchActivity;
private static Activity currentActivity;
private static MyApplication instance;
private String TAG = "DINGDINGCAR-----";
//口令跳转
public static boolean hasJumped = false;
public static void setCurrentActivity(Activity activity) {
mLaunchActivity = activity;
}
public static Activity getLaunchActivity() {
return mLaunchActivity;
}
public static synchronized boolean canJump() {
if (!hasJumped) {
hasJumped = true;
return true;
}
return false;
}
public void initializeUmengSDK(){
//预初始化
// UMConfigure.preInit(context, AppConfig.UMENG_APP_KEY, "Android");
// UMConfigure.init(this,"5a12384aa40fa3551f0001d1"
// ,"umeng",UMConfigure.DEVICE_TYPE_PHONE,"");
// //日志开关
// UMConfigure.setLogEnabled(true);
// //科大讯飞 该段初始化代码必须要放在用户还同意隐私协议政策之后
// // 将“12345678”替换成您申请的APPID申请地址http://www.xfyun.cn
// // 请勿在“=”与appid之间添加任何空字符或者转义符
// SpeechUtility.createUtility(context, SpeechConstant.APPID +"=322c51d1");
//初始化厂商推送
}
@Override
public void onCreate() {
super.onCreate();
instance = this;
context = getApplicationContext();
// 异步预加载农历数据缓存
LunarDateLoader.preloadLunarJson(this);
boolean isUserAgreed = SharePreUtil.getBoolean(ConstantUtil.SHARE_PRE_NAME,context,ConstantUtil.PRIVACY_POLICY_AGREED);
if(isUserAgreed){
initializeUmengSDK();
}
NetWorkManager.getInstance().init(this);
AppConfig.USER_LOGIN = SharePreUtil.getBoolean(ConstantUtil.SHARE_PRE_NAME,context,ConstantUtil.USER_LOGIN);
AppConfig.USER_TOKEN = SharePreUtil.getString(ConstantUtil.SHARE_PRE_NAME,context,ConstantUtil.USER_TOKEN);
AppConfig.USER_SET_BIRTH_INFO = SharePreUtil.getBoolean(ConstantUtil.SHARE_PRE_NAME,context,ConstantUtil.USER_HAS_SET_BIRTH);
//单位JSON
AppConfig.PRODUCT_UNIT_JSON = SharePreUtil.getString(ConstantUtil.SHARE_PRE_NAME,context,ConstantUtil.GOODS_UNIT_JSON);
AppConfig.PRODUCT_BRAND_JSON = SharePreUtil.getString(ConstantUtil.SHARE_PRE_NAME,context,ConstantUtil.GOODS_BRAND_JSON);
AppConfig.USER_ID = SharePreUtil.getString(ConstantUtil.SHARE_PRE_NAME,context, ConstantUtil.USER_ID);
String userInfoJson = SharePreUtil.getString(ConstantUtil.SHARE_PRE_NAME,context, ConstantUtil.USER_INFO_JSON_CONTENT);
if(!TextUtils.isEmpty(userInfoJson)){
LoginEntity entity = new Gson().fromJson(userInfoJson, LoginEntity.class);
MingDengUserInfoManager.getInstance().setEntity(entity);
MingDengUserInfoManager.getInstance().setUserInfo(entity.getUser_info());
}
registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
@Override
public void onActivityCreated(@NonNull Activity activity, @Nullable Bundle bundle) {
}
@Override
public void onActivityStarted(@NonNull Activity activity) {
}
@Override
public void onActivityResumed(@NonNull Activity activity) {
if(activity != null){
Log.i("currentAct", "当前所在页面===============" + activity.getLocalClassName()+ "=======================");
}
}
@Override
public void onActivityPaused(@NonNull Activity activity) {
}
@Override
public void onActivityStopped(@NonNull Activity activity) {
}
@Override
public void onActivitySaveInstanceState(@NonNull Activity activity, @NonNull Bundle bundle) {
}
@Override
public void onActivityDestroyed(@NonNull Activity activity) {
}
});
registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
@Override
public void onActivityResumed(Activity activity) {
currentActivity = activity;
}
@Override
public void onActivityPaused(Activity activity) {
if (currentActivity == activity) {
currentActivity = null;
}
}
// 其他回调方法可以留空
@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
currentActivity = activity;
}
@Override
public void onActivityStarted(Activity activity) {
currentActivity = activity;
}
@Override
public void onActivityStopped(Activity activity) {}
@Override
public void onActivitySaveInstanceState(Activity activity, Bundle outState) {}
@Override
public void onActivityDestroyed(Activity activity) {}
});
AutoSizeConfig.getInstance()
// 是否使用设备真实尺寸
.setUseDeviceSize(true)
// 是否支持 fragment
.setCustomFragment(true);
}
private boolean shouldInit() {
ActivityManager am = ((ActivityManager) getSystemService(Context.ACTIVITY_SERVICE));
List<ActivityManager.RunningAppProcessInfo> processInfos = am.getRunningAppProcesses();
String mainProcessName = getApplicationInfo().processName;
int myPid = android.os.Process.myPid();
for (ActivityManager.RunningAppProcessInfo info : processInfos) {
if (info.pid == myPid && mainProcessName.equals(info.processName)) {
return true;
}
}
return false;
}
public static Activity getCurrentActivity() {
return instance.currentActivity;
}
public static Context getContext() {
return context;
}
}