@@ -6,18 +6,18 @@ import android.os.Process
6
6
import bisq.common.facades.FacadeProvider
7
7
import bisq.common.facades.android.AndroidGuavaFacade
8
8
import bisq.common.facades.android.AndroidJdkFacade
9
- import bisq.common.network.AndroidEmulatorLocalhostFacade
10
9
import network.bisq.mobile.android.node.di.androidNodeModule
11
10
import network.bisq.mobile.domain.di.domainModule
12
11
import network.bisq.mobile.domain.di.serviceModule
12
+ import network.bisq.mobile.domain.utils.Logging
13
13
import network.bisq.mobile.presentation.di.presentationModule
14
14
import org.bouncycastle.jce.provider.BouncyCastleProvider
15
15
import org.koin.android.ext.koin.androidContext
16
16
import org.koin.core.context.startKoin
17
17
import org.koin.core.context.stopKoin
18
18
import java.security.Security
19
19
20
- class MainApplication : Application () {
20
+ class MainApplication : Application (), Logging {
21
21
companion object {
22
22
private val nodeModules = listOf (domainModule, serviceModule, presentationModule, androidNodeModule)
23
23
@@ -38,13 +38,28 @@ class MainApplication : Application() {
38
38
}
39
39
40
40
private fun setupBisqCoreStatics () {
41
- FacadeProvider .setLocalhostFacade(AndroidEmulatorLocalhostFacade ())
41
+ // FacadeProvider.setLocalhostFacade(AndroidEmulatorLocalhostFacade())
42
+ val isEmulator = isEmulator()
43
+ FacadeProvider .setIsAndroidDevice(true )
44
+ FacadeProvider .setIsAndroidEmulator(isEmulator)
42
45
FacadeProvider .setJdkFacade(AndroidJdkFacade (Process .myPid()))
43
46
FacadeProvider .setGuavaFacade(AndroidGuavaFacade ())
44
47
45
48
// Androids default BC version does not support all algorithms we need, thus we remove
46
49
// it and add our BC provider
47
50
Security .removeProvider(" BC" )
48
51
Security .addProvider(BouncyCastleProvider ())
52
+ log.d { " Configured bisq2 for Android${if (isEmulator) " emulator" else " " } " }
53
+ }
54
+
55
+ private fun isEmulator (): Boolean {
56
+ return android.os.Build .FINGERPRINT .startsWith(" generic" )
57
+ || android.os.Build .FINGERPRINT .startsWith(" unknown" )
58
+ || android.os.Build .MODEL .contains(" google_sdk" )
59
+ || android.os.Build .MODEL .contains(" Emulator" )
60
+ || android.os.Build .MODEL .contains(" Android SDK built for x86" )
61
+ || android.os.Build .MANUFACTURER .contains(" Genymotion" )
62
+ || (android.os.Build .BRAND .startsWith(" generic" ) && android.os.Build .DEVICE .startsWith(" generic" ))
63
+ || " google_sdk" .equals(android.os.Build .PRODUCT );
49
64
}
50
65
}
0 commit comments