KOIN 설정 적용
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
package kr.co.vividnext.sodalive.app
|
||||
|
||||
import android.app.Application
|
||||
import android.content.pm.ApplicationInfo
|
||||
import android.content.pm.PackageManager
|
||||
import android.os.Build
|
||||
import androidx.appcompat.app.AppCompatDelegate
|
||||
import com.orhanobut.logger.AndroidLogAdapter
|
||||
import com.orhanobut.logger.Logger
|
||||
import kr.co.vividnext.sodalive.BuildConfig
|
||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||
import kr.co.vividnext.sodalive.di.AppDI
|
||||
|
||||
class SodaLiveApp : Application() {
|
||||
override fun onCreate() {
|
||||
super.onCreate()
|
||||
|
||||
Logger.addLogAdapter(object : AndroidLogAdapter() {
|
||||
override fun isLoggable(priority: Int, tag: String?): Boolean {
|
||||
return BuildConfig.DEBUG && isDebuggable()
|
||||
}
|
||||
})
|
||||
|
||||
AppDI(applicationContext, BuildConfig.DEBUG && isDebuggable())
|
||||
|
||||
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES)
|
||||
|
||||
SharedPreferenceManager.init(applicationContext)
|
||||
}
|
||||
|
||||
private fun isDebuggable(): Boolean {
|
||||
var debuggable = false
|
||||
|
||||
try {
|
||||
val appInfo = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
||||
packageManager.getApplicationInfo(
|
||||
packageName,
|
||||
PackageManager.ApplicationInfoFlags.of(0L)
|
||||
)
|
||||
} else {
|
||||
packageManager.getApplicationInfo(packageName, 0)
|
||||
}
|
||||
debuggable = 0 != appInfo.flags and ApplicationInfo.FLAG_DEBUGGABLE
|
||||
} catch (e: PackageManager.NameNotFoundException) {
|
||||
/* debuggable variable will remain false */
|
||||
}
|
||||
|
||||
return debuggable
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user