| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- package com.jld.vod.base
- import android.app.Activity
- import android.app.Application
- import android.content.Context
- import android.os.Bundle
- import android.preference.PreferenceManager
- import android.util.Log
- import com.facebook.drawee.backends.pipeline.Fresco
- import com.jld.vod.model.bean.ContextBean
- import com.jld.vod.ui.XBasicLibInit
- import com.jld.vod.utils.http.RetrofitUtils
- import com.xuexiang.xui.XUI
- import com.zzhoujay.richtext.RichText
- import org.mapsforge.map.android.graphics.AndroidGraphicFactory
- import org.mapsforge.map.layer.renderer.MapWorkerPool
- import org.mapsforge.map.model.DisplayModel
- import org.mapsforge.map.reader.MapFile
- /**
- * @author ZhaoFuXin
- * @Email:18276061387@163.com
- * @description:
- * @date :2019/11/26 14:47
- */
- class MyApplication : Application(){
- val TAG = "Mapsforge Samples"
- val SETTING_DEBUG_TIMING = "debug_timing"
- val SETTING_LANGUAGE_SHOWLOCAL = "language_showlocal"
- val SETTING_PREFERRED_LANGUAGE = "language_selection"
- val SETTING_RENDERING_THREADS = "rendering_threads"
- val SETTING_SCALE = "scale"
- val SETTING_TEXTWIDTH = "textwidth"
- val SETTING_TILECACHE_PERSISTENCE = "tilecache_persistence"
- val SETTING_WAYFILTERING = "wayfiltering"
- val SETTING_WAYFILTERING_DISTANCE = "wayfiltering_distance"
- private var callbacks:ActivityLifecycleCallbacks? = null
- /**
- * 内存检测
- */
- companion object{
- fun isDebug(): Boolean {
- return false
- }
- lateinit var app: Application
- }
- override fun onCreate() {
- super.onCreate()
- app = this
- RetrofitUtils.init()
- Fresco.initialize(app)
- /**
- * 地图
- */
- AndroidGraphicFactory.createInstance(this)
- Log.e(TAG, "Device scale factor " + java.lang.Float.toString(DisplayModel.getDeviceScaleFactor()))
- val preferences = PreferenceManager.getDefaultSharedPreferences(this)
- val fs = java.lang.Float.valueOf(preferences.getString(SETTING_SCALE, java.lang.Float.toString(DisplayModel.getDefaultUserScaleFactor()))!!)
- Log.e(TAG, "User ScaleFactor " + java.lang.Float.toString(fs))
- if (fs != DisplayModel.getDefaultUserScaleFactor()) { DisplayModel.setDefaultUserScaleFactor(fs) }
- MapFile.wayFilterEnabled = preferences.getBoolean(SETTING_WAYFILTERING, true)
- if (MapFile.wayFilterEnabled) {
- MapFile.wayFilterDistance = preferences.getString(SETTING_WAYFILTERING_DISTANCE, "20")!!.toInt()
- }
- MapWorkerPool.DEBUG_TIMING = preferences.getBoolean(SETTING_DEBUG_TIMING, false)
- //XUI
- initUI()
- //初始化基础库
- XBasicLibInit.init(this)
- //html
- RichText.initCacheDir(this)
- RichText.debugMode = true
- initActivityLifecycle()
- }
- private fun initActivityLifecycle() {
- app.registerActivityLifecycleCallbacks(object : ActivityLifecycleCallbacks{
- override fun onActivityPaused(activity: Activity) {
- }
- override fun onActivityStarted(activity: Activity) {
- }
- override fun onActivityDestroyed(activity: Activity) {
- if (activity == ContextBean.getInstance().getActivity()) {
- ContextBean.getInstance().setActivity(null)
- }
- }
- override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) {
- }
- override fun onActivityStopped(activity: Activity) {
- }
- override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?) {
- ContextBean.getInstance().setActivity(activity);
- }
- override fun onActivityResumed(activity: Activity) {
- }
- })
- }
- /**
- * 初始化XUI 框架
- */
- private fun initUI() {
- XUI.init(this)
- XUI.debug(isDebug())
- }
- }
|