2017-09-14 109 views
0

我試圖從原生Android傳遞數據到React Native。數據是由應該分派的操作組成的對象數組。 例如何將Android的對象數組傳遞給React Native?

{ 
    "actions: [ 
    { 
     "authenticationType: "strong", 
     "type: "AUTHENTICATION_URL", 
     "url: "https://foo.bar/", 
    }, 
    ], 
} 

我試圖使用com.facebook.react.bridge.Arguments類做類似的東西

val arguments = Arguments.createMap().apply { 
    putString("path", "general/authentication") 
    putArray("actions", 
      Arguments.fromList(listOf(
        mapOf("authenticationType" to "strong", 
         "type" to "AUTHENTICATION_URL", 
         "url" to url 
        )))) 
} 

,但它只會導致

09-14 20:08:53.996 10437 10437 I zygote : Thread[1,tid=10437,Native,Thread*=0xb18da000,peer=0x73d2f568,"main"] recursive attempt to load library "/data/app/com.getdreams-MO6VYrPeHVgAkBP2ori8SA==/lib/x86/libfb.so" 

不確定如何創建JavaScript對象的數組。

有沒有人有任何建議,或許可以更好地使用com.facebook.react.bridge.Arguments

回答

0

我沒有使用Arguments類後解決了這個只有幾分鐘,像這樣

val action = Arguments.makeNativeMap(
    mutableMapOf("authenticationType" to "strong", 
       "type" to "AUTHENTICATION_URL", 
       "url" to url) as Map<String, Any>) 

val actionArray = Arguments.makeNativeArray(listOf(action)) 

val arguments = Arguments.createMap().apply { 
    putString("path", "general/authentication") 
    putArray("actions",actionArray) 
} 
相關問題