Commit 30319abb authored by Gandha Ryanto's avatar Gandha Ryanto

Add callback

parent 300f89fc
......@@ -108,15 +108,15 @@ repositories {
maven {
url = "https://mobile-repo.mdd.co.id:8081/artifactory/android-library"
credentials {
username = "admin"
password = "Mddcoid*123#"
username = "partner"
password = "Partner*123#"
}
}
}
dependencies {
// The version of react-native is set by the React Native Gradle Plugin
implementation(group: 'com.mdd.topup', name: 'mdd_nfc_manager_android-release', version: '1.0.1', ext: 'aar')
implementation(group: 'com.mdd.topup', name: 'mdd_nfc_manager_android-release', version: '1.0.2', ext: 'aar')
//retrofit
implementation("io.reactivex.rxjava2:rxjava:2.2.19")
......
......@@ -11,7 +11,9 @@ import com.facebook.react.bridge.ReactContextBaseJavaModule
import com.facebook.react.bridge.ReactMethod
import com.facebook.react.bridge.WritableNativeMap
import com.facebook.react.modules.core.DeviceEventManagerModule
import com.google.gson.Gson
import id.mdd.mdd_nfc_manager_android.MddNfcManager
import id.mdd.mdd_nfc_manager_android.models.CardInfoObject
class MyModuleMdd(private val reactContext: ReactApplicationContext) :
ReactContextBaseJavaModule(reactContext), ActivityEventListener, LifecycleEventListener {
......@@ -51,7 +53,6 @@ class MyModuleMdd(private val reactContext: ReactApplicationContext) :
@ReactMethod
fun initNfc() {
println("initNfc called")
nfcManager?.startNfc()
val params = WritableNativeMap()
......@@ -86,9 +87,22 @@ class MyModuleMdd(private val reactContext: ReactApplicationContext) :
override fun onNewIntent(intent: Intent) {
Log.d(TAG, "onNewIntent")
if (currentState == MddNfcManager.NfcState.CARD_INFO) {
nfcManager?.getCardInfo(intent)
nfcManager?.getCardInfo(intent, object : MddNfcManager.LibraryCallback {
override fun onResult(result: CardInfoObject) {
val params = WritableNativeMap()
params.putString("message", Gson().toJson(result))
eventEmitter?.emit("MyEvent", params)
}
})
} else if (currentState == MddNfcManager.NfcState.UPDATE) {
nfcManager?.update(intent, "081514230108", "gandharyanto@gmail.com")
nfcManager?.update(intent, "081518012374", "developer@gmail.com", object :
MddNfcManager.LibraryCallback {
override fun onResult(result: CardInfoObject) {
val params = WritableNativeMap()
params.putString("message", Gson().toJson(result))
eventEmitter?.emit("MyEvent", params)
}
})
}
}
......
......@@ -11,8 +11,8 @@ buildscript {
maven {
url = "https://mobile-repo.mdd.co.id:8081/artifactory/android-library"
credentials {
username = "admin"
password = "Mddcoid*123#"
username = "partner"
password = "Partner*123#"
}
}
mavenCentral()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment