|
@@ -5,13 +5,22 @@ import android.content.Context
|
|
import android.content.Intent
|
|
import android.content.Intent
|
|
import android.os.Build
|
|
import android.os.Build
|
|
import android.util.Log
|
|
import android.util.Log
|
|
|
|
+import android.widget.Toast
|
|
|
|
+import com.google.firebase.Firebase
|
|
|
|
+import com.google.firebase.FirebaseApp
|
|
|
|
+import com.google.firebase.FirebaseOptions
|
|
|
|
+import com.google.firebase.app
|
|
|
|
+import com.google.firebase.initialize
|
|
import io.newuniverse.SDK.nuSDKService
|
|
import io.newuniverse.SDK.nuSDKService
|
|
import io.nexilis.service.core.Data
|
|
import io.nexilis.service.core.Data
|
|
|
|
+import io.nexilis.service.core.Network
|
|
|
|
+import io.nexilis.service.core.decrypt
|
|
import io.nexilis.service.core.getSharedPreferences
|
|
import io.nexilis.service.core.getSharedPreferences
|
|
import io.nexilis.service.core.optString
|
|
import io.nexilis.service.core.optString
|
|
import io.nexilis.service.core.put
|
|
import io.nexilis.service.core.put
|
|
import kotlinx.coroutines.launch
|
|
import kotlinx.coroutines.launch
|
|
import java.security.SecureRandom
|
|
import java.security.SecureRandom
|
|
|
|
+import java.util.Locale
|
|
import java.util.concurrent.TimeUnit
|
|
import java.util.concurrent.TimeUnit
|
|
import java.util.concurrent.locks.Condition
|
|
import java.util.concurrent.locks.Condition
|
|
import java.util.concurrent.locks.ReentrantLock
|
|
import java.util.concurrent.locks.ReentrantLock
|
|
@@ -28,13 +37,27 @@ class Api {
|
|
Log.d(tag, "connect:$account")
|
|
Log.d(tag, "connect:$account")
|
|
Thread {
|
|
Thread {
|
|
try {
|
|
try {
|
|
|
|
+ val domain = Network().getSync("https://nexilis.io/dipp/NuN1v3rs3/Qm3r4i0/get_ip_domain?account=$account")
|
|
|
|
+ Log.d(tag, "domain:${domain?.decrypt()}")
|
|
|
|
+ val options = FirebaseOptions.Builder()
|
|
|
|
+ .setProjectId("push-kit-de2e3")
|
|
|
|
+ .setApplicationId("1:36827599888:android:29e65c0ec8a560c5916695")
|
|
|
|
+ .setApiKey("AIzaSyCLMlbL2GSDy7RVpw0dS55efV2uljB3R2U")
|
|
|
|
+ .build()
|
|
|
|
+ try {
|
|
|
|
+ Firebase.app(FirebaseApp.DEFAULT_APP_NAME)
|
|
|
|
+ Firebase.initialize(activity.applicationContext, options, "nexilis")
|
|
|
|
+ } catch (e: Exception) {
|
|
|
|
+ Firebase.initialize(activity.applicationContext, options, FirebaseApp.DEFAULT_APP_NAME)
|
|
|
|
+ }
|
|
activity.startService(Intent(activity, nuSDKService::class.java))
|
|
activity.startService(Intent(activity, nuSDKService::class.java))
|
|
while (!nuSDKService.bServiceStarted()) {
|
|
while (!nuSDKService.bServiceStarted()) {
|
|
Thread.sleep(100)
|
|
Thread.sleep(100)
|
|
}
|
|
}
|
|
val preferences = activity.getSharedPreferences()
|
|
val preferences = activity.getSharedPreferences()
|
|
preferences.put(key = "api", value = account)
|
|
preferences.put(key = "api", value = account)
|
|
- val random = String.format("%010d", SecureRandom().nextInt(999999))
|
|
|
|
|
|
+ val random =
|
|
|
|
+ String.format(Locale.getDefault(), "%010d", SecureRandom().nextInt(Int.MAX_VALUE))
|
|
val session = preferences.optString(
|
|
val session = preferences.optString(
|
|
key = "session", default = random
|
|
key = "session", default = random
|
|
)
|
|
)
|
|
@@ -52,19 +75,25 @@ class Api {
|
|
false,
|
|
false,
|
|
"202.158.33.26:62823"
|
|
"202.158.33.26:62823"
|
|
)
|
|
)
|
|
- val signature: String =
|
|
|
|
- nuSDKService.getInstance(pass).sGetSignature()
|
|
|
|
|
|
+ val signature: String = nuSDKService.getInstance(pass).sGetSignature()
|
|
if ("1,1,1,1,1,1,1,1,1,1,1,1" != signature) nuSDKService.getInstance(pass)
|
|
if ("1,1,1,1,1,1,1,1,1,1,1,1" != signature) nuSDKService.getInstance(pass)
|
|
.UpdateSignature()
|
|
.UpdateSignature()
|
|
val pin = preferences.optString(key = "pin", default = "")
|
|
val pin = preferences.optString(key = "pin", default = "")
|
|
if (pin.isEmpty()) {
|
|
if (pin.isEmpty()) {
|
|
condition = lock.newCondition()
|
|
condition = lock.newCondition()
|
|
lock.withLock {
|
|
lock.withLock {
|
|
- Log.d(tag, "wait connection")
|
|
|
|
|
|
+ Log.d(tag, "wait:connection")
|
|
condition?.let {
|
|
condition?.let {
|
|
val await = it.await(15, TimeUnit.SECONDS)
|
|
val await = it.await(15, TimeUnit.SECONDS)
|
|
|
|
+ Log.d(tag, "wait:result:$await")
|
|
|
|
+ if (!await) {
|
|
|
|
+ activity.runOnUiThread {
|
|
|
|
+ Toast.makeText(activity, "Please check your internet connection", Toast.LENGTH_LONG).show()
|
|
|
|
+ }
|
|
|
|
+ return@Thread
|
|
|
|
+ }
|
|
|
|
+ Log.d(tag, "signup:start")
|
|
preferences.put(key = "session", value = session)
|
|
preferences.put(key = "session", value = session)
|
|
- Log.d(tag, "signup:start:$await")
|
|
|
|
val response = Service.sendSync(
|
|
val response = Service.sendSync(
|
|
Data(
|
|
Data(
|
|
code = "SUA01",
|
|
code = "SUA01",
|
|
@@ -108,8 +137,7 @@ class Api {
|
|
status = System.nanoTime().toString(),
|
|
status = System.nanoTime().toString(),
|
|
f_pin = it,
|
|
f_pin = it,
|
|
bodies = mutableMapOf(
|
|
bodies = mutableMapOf(
|
|
- "TKN" to token,
|
|
|
|
- "Bo" to Build.BRAND
|
|
|
|
|
|
+ "TKN" to token, "Bo" to Build.BRAND
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|