充电桩app代码

MainApplication.java 11KB

    package com.electric.chargingpile.application; import android.annotation.SuppressLint; import android.content.Context; import android.content.Intent; import android.database.sqlite.SQLiteDatabase; import android.graphics.Bitmap; import android.os.Build; import android.os.Bundle; import android.os.Environment; import android.os.StrictMode; import androidx.multidex.MultiDexApplication; import android.text.TextUtils; import android.util.Log; import com.amap.api.maps.model.LatLng; import com.blankj.utilcode.util.LogUtils; import com.blankj.utilcode.util.Utils; import com.electric.chargingpile.BuildConfig; import com.electric.chargingpile.data.AdDetail; import com.electric.chargingpile.data.Zhan; import com.electric.chargingpile.gen.DaoMaster; import com.electric.chargingpile.gen.DaoSession; import com.electric.chargingpile.manager.PreferenceManager; import com.electric.chargingpile.manager.ProfileManager; import com.electric.chargingpile.util.SharedPreferencesHelper; import com.mob.MobSDK; import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator; import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.ImageLoaderConfiguration; import com.nostra13.universalimageloader.core.assist.ImageScaleType; import com.tencent.bugly.crashreport.CrashReport; import com.zhy.http.okhttp.OkHttpUtils; import org.json.JSONException; import org.json.JSONObject; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import cn.jpush.android.api.JPushInterface; public class MainApplication extends MultiDexApplication { public static MainApplication instances; private DaoMaster.DevOpenHelper mHelper; private SQLiteDatabase db; private DaoMaster mDaoMaster; private DaoSession mDaoSession; public static int mScreenWidth; public static int mScreenHeight; public static SharedPreferencesHelper sph; public static List<Zhan> collectList; public static String userPhone = ""; public static String userTpye = ""; // 1:国标 2:特斯拉 public static String userId = ""; public static String userCar = ""; public static String userIcon = ""; public static LatLng center = null; // 用户位置 public static String userNickname = ""; public static String mapStatus = ""; public static String costWay = ""; public static String sudu = ""; // 1: 快充 2:慢充 public static String shuxing = ""; // 公共、私人 public static String messageToken = ""; public static String map = ""; public static String atCity = ""; public static String sql = ""; public static String uptime = ""; public static String details_flag = "0"; public static String firstPoint = ""; public static Boolean firstSsyd; public static String password = ""; public static String url = "http://59.110.68.162";// 充电桩测试环境 public static String pic_url = "http://59.110.68.162/zhannew/uploadfile/"; // public static String url = "http://cdz.evcharge.cc";// 充电桩正式环境 // public static String pic_url = "http://cdz.evcharge.cc/zhannew/uploadfile/"; // public static String urlNew = "http://123.56.67.7:83/api/0300";// 一电测试环境 public static String urlNew = "https://api.touchev.com:83/api/0300";// 一电正式环境 // public static String url = "https://cdz.d1ev.com"; public static String build_flag = "0"; public static String support = "0"; // true:本APP支付 false:其他方式支付 public static String freestop = ""; // true:免费停车 public static String selecthotel = ""; // true:酒店 public static String selectexpressway = ""; // true:高速 public static String selectjingdian = ""; // true:景点 public static String logid = ""; public static String suitcar = ""; public static Boolean gestureguide; public static String h5_url = ""; private String pushID = ""; public static String imei = ""; public static String current_url = ""; public static String goods_type = ""; public static String ad_link = ""; public static String ok = ""; public static String type = ""; public static String userPassword = ""; public static String mainSkip = ""; public static String level_one = ""; public static String level_two = ""; public static String level_three = ""; public static String level_four = ""; public static String level_five = ""; public static String huodonglabel = ""; public static String mianStop = ""; public static String search_address = ""; public static boolean isMap = true; public static int count; public static int round; public static int msgOne; public static String msgTime; public static String firstOpenTime; public static int msgTwo; public static List<AdDetail> list_addetail; public static String festival_time = ""; public static boolean isIgnore = true; public static Double search_jing = 0.0, search_wei = 0.0; public static Context context; public static String current_code = "3.5"; public static String storePath = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "cdz_android"; public static String q_content = ""; public static Map<String, String> q_map = new HashMap<>(); public static boolean isAppStart; public static boolean haveActivity = false; public static String ad_major = ""; private String mCurrentCity = ""; @SuppressLint("MissingPermission") @Override public void onCreate() { super.onCreate(); this.context = getApplicationContext(); StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder(); StrictMode.setVmPolicy(builder.build()); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) { builder.detectFileUriExposure(); } MobSDK.init(this); instances = this; setDatabase(); Utils.init(this); LogUtils.getConfig().setLogSwitch(true); //极光 JPushInterface.setDebugMode(false); JPushInterface.init(this); CrashReport.initCrashReport(getApplicationContext(), "900010422", BuildConfig.DEBUG); initImageLoader(getApplicationContext()); try { OkHttpUtils.getInstance().setCertificates(getAssets().open("ca.crt")); OkHttpUtils.getInstance().setCertificates(); } catch (IOException e) { e.printStackTrace(); } mScreenWidth = getResources().getDisplayMetrics().widthPixels; mScreenHeight = getResources().getDisplayMetrics().heightPixels; Log.e("mScreenWidth", mScreenWidth + ""); Log.e("mScreenHeight", mScreenHeight + ""); sph = new SharedPreferencesHelper(this); collectList = new ArrayList<>(); isAppStart = ProfileManager.getInstance().getAppStart(getApplicationContext()); userPhone = ProfileManager.getInstance().getUsername(getApplicationContext()); userId = ProfileManager.getInstance().getUserid(getApplicationContext()); userPassword = ProfileManager.getInstance().getKeyUserpassword(getApplicationContext()); userCar = ProfileManager.getInstance().getUsercar(getApplicationContext()); userIcon = ProfileManager.getInstance().getUsericon(getApplicationContext()); Log.e("111", "onCreate: " + userIcon); msgOne = ProfileManager.getInstance().getMsgOne(getApplicationContext()); msgTime = ProfileManager.getInstance().getSystemMsgTime(getApplicationContext()); firstOpenTime = ProfileManager.getInstance().getFirstOpenTime(getApplicationContext()); loginRemind(); setFestival(); } public static MainApplication getInstance() { if (null == instances) { instances = new MainApplication(); } return instances; } public void setmCurrentCity(String mCurrentCity) { this.mCurrentCity = mCurrentCity; } public String getmCurrentCity() { return mCurrentCity; } public static void initImageLoader(Context context) { ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context).threadPoolSize(5).threadPriority(Thread.NORM_PRIORITY - 2).denyCacheImageMultipleSizesInMemory() .discCacheFileNameGenerator(new Md5FileNameGenerator()).discCacheSize(50 * 1024 * 1024).memoryCacheSize(5 * 1024 * 1024).build(); ImageLoader.getInstance().init(config); } public static DisplayImageOptions getCacheOptions(int image) { return new DisplayImageOptions.Builder().showImageForEmptyUri(image).showImageOnFail(image).cacheInMemory(true).cacheOnDisc(true).considerExifParams(true) .imageScaleType(ImageScaleType.IN_SAMPLE_INT).resetViewBeforeLoading(false).bitmapConfig(Bitmap.Config.RGB_565).build(); } public static boolean isLogin() { if ("".equals(userPhone)) { return false; } return true; } private void loginRemind() { round = ProfileManager.getInstance().getRound(getApplicationContext()); count = ProfileManager.getInstance().getCount(getApplicationContext()); if (!MainApplication.isLogin()) { int i = count + 1; Log.e("i***-", i + ""); ProfileManager.getInstance().setCount(getApplicationContext(), i); count = i; } } private void setFestival() { int time = (int) (System.currentTimeMillis() / 1000); if (time >= 1484841600 && time <= 1486569599) { MainApplication.festival_time = "1"; } else if (time >= 1486569600 && time <= 1486915199) { MainApplication.festival_time = "2"; } } /** * 设置greenDao */ private void setDatabase() { // 通过 DaoMaster 的内部类 DevOpenHelper,你可以得到一个便利的 SQLiteOpenHelper 对象。 // 可能你已经注意到了,你并不需要去编写「CREATE TABLE」这样的 SQL 语句,因为 greenDAO 已经帮你做了。 // 注意:默认的 DaoMaster.DevOpenHelper 会在数据库升级时,删除所有的表,意味着这将导致数据的丢失。 // 所以,在正式的项目中,你还应该做一层封装,来实现数据库的安全升级。 mHelper = new DaoMaster.DevOpenHelper(this, "my-search-text-db", null); db = mHelper.getWritableDatabase(); // 注意:该数据库连接属于 DaoMaster,所以多个 Session 指的是相同的数据库连接。 mDaoMaster = new DaoMaster(db); mDaoSession = mDaoMaster.newSession(); } public DaoSession getDaoSession() { return mDaoSession; } public SQLiteDatabase getDb() { return db; } public String getPushID() { if (TextUtils.isEmpty(pushID)) { return ProfileManager.getInstance().getPushID(getApplicationContext()); } else { return pushID; } } public void setPushID(String pushID) { this.pushID = pushID; ProfileManager.getInstance().setPushID(getApplicationContext(), pushID); } }