xref: /MusicFree/android/app/src/main/java/fun/upup/musicfree/MainApplication.kt (revision 6613e77203923e5b1742a49281bfa5de03fc1440)
15589cdf3S猫头猫 package `fun`.upup.musicfree
25589cdf3S猫头猫 import android.content.res.Configuration
35589cdf3S猫头猫 import expo.modules.ApplicationLifecycleDispatcher
45589cdf3S猫头猫 import expo.modules.ReactNativeHostWrapper
55589cdf3S猫头猫 
65589cdf3S猫头猫 import android.app.Application
75589cdf3S猫头猫 import com.facebook.react.PackageList
85589cdf3S猫头猫 import com.facebook.react.ReactApplication
95589cdf3S猫头猫 import com.facebook.react.ReactHost
105589cdf3S猫头猫 import com.facebook.react.ReactNativeHost
115589cdf3S猫头猫 import com.facebook.react.ReactPackage
125589cdf3S猫头猫 import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.load
135589cdf3S猫头猫 import com.facebook.react.defaults.DefaultReactHost.getDefaultReactHost
145589cdf3S猫头猫 import com.facebook.react.defaults.DefaultReactNativeHost
15*6613e772Smaotoumao import com.facebook.react.soloader.OpenSourceMergedSoMapping
165589cdf3S猫头猫 import com.facebook.soloader.SoLoader
175589cdf3S猫头猫 import `fun`.upup.musicfree.lyricUtil.LyricUtilPackage
185589cdf3S猫头猫 import `fun`.upup.musicfree.mp3Util.Mp3UtilPackage
195589cdf3S猫头猫 import `fun`.upup.musicfree.utils.UtilsPackage
205589cdf3S猫头猫 
215589cdf3S猫头猫 class MainApplication : Application(), ReactApplication {
225589cdf3S猫头猫 
235589cdf3S猫头猫   override val reactNativeHost: ReactNativeHost =
245589cdf3S猫头猫       ReactNativeHostWrapper(this, object : DefaultReactNativeHost(this) {
getPackagesnull255589cdf3S猫头猫         override fun getPackages(): List<ReactPackage> =
265589cdf3S猫头猫             PackageList(this).packages.apply {
275589cdf3S猫头猫               // Packages that cannot be autolinked yet can be added manually here, for example:
285589cdf3S猫头猫               // add(MyReactNativePackage())
295589cdf3S猫头猫               add(UtilsPackage())
305589cdf3S猫头猫               add(Mp3UtilPackage())
315589cdf3S猫头猫               add(LyricUtilPackage())
325589cdf3S猫头猫             }
335589cdf3S猫头猫 
getJSMainModuleNamenull345589cdf3S猫头猫         override fun getJSMainModuleName(): String = "index"
355589cdf3S猫头猫 
365589cdf3S猫头猫         override fun getUseDeveloperSupport(): Boolean = BuildConfig.DEBUG
375589cdf3S猫头猫 
385589cdf3S猫头猫         override val isNewArchEnabled: Boolean = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED
395589cdf3S猫头猫         override val isHermesEnabled: Boolean = BuildConfig.IS_HERMES_ENABLED
405589cdf3S猫头猫       })
415589cdf3S猫头猫 
425589cdf3S猫头猫   override val reactHost: ReactHost
435589cdf3S猫头猫     get() = ReactNativeHostWrapper.createReactHost(applicationContext, reactNativeHost)
445589cdf3S猫头猫 
455589cdf3S猫头猫   override fun onCreate() {
465589cdf3S猫头猫     super.onCreate()
47*6613e772Smaotoumao     SoLoader.init(this, OpenSourceMergedSoMapping)
485589cdf3S猫头猫     if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) {
495589cdf3S猫头猫       // If you opted-in for the New Architecture, we load the native entry point for this app.
505589cdf3S猫头猫       load()
515589cdf3S猫头猫     }
525589cdf3S猫头猫     ApplicationLifecycleDispatcher.onApplicationCreate(this)
535589cdf3S猫头猫   }
545589cdf3S猫头猫 
onConfigurationChangednull555589cdf3S猫头猫   override fun onConfigurationChanged(newConfig: Configuration) {
565589cdf3S猫头猫     super.onConfigurationChanged(newConfig)
575589cdf3S猫头猫     ApplicationLifecycleDispatcher.onConfigurationChanged(this, newConfig)
585589cdf3S猫头猫   }
595589cdf3S猫头猫 }
60