Jetpack Compose
Integration
dependencies {
implementation 'com.verygoodsecurity:vgscollect:1.9.+'
}import android.os.Bundle
import androidx.activity.compose.setContent
import androidx.appcompat.app.AppCompatActivity
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.material.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import com.verygoodsecurity.vgscollect.core.VGSCollect
import com.verygoodsecurity.vgscollect.core.VgsCollectResponseListener
import com.verygoodsecurity.vgscollect.core.model.network.VGSResponse
import com.verygoodsecurity.vgscollect.widget.compose.VGSCardNumberEditTextWrapper
class ComposeActivity : AppCompatActivity(), VgsCollectResponseListener {
private val collect: VGSCollect by lazy {
VGSCollect(
this,
"<VAULT_ID>"",
"<ENVIRONMENT>"
).also {
it.addOnResponseListeners(this)
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
MaterialTheme {
Content(collect = collect)
}
}
}
override fun onResponse(response: VGSResponse?) {
// Handle response
}
@Composable
private fun Content(collect: VGSCollect?) {
Column {
VGSCardNumberEditTextWrapper(
collect = collect,
fieldName = "<FIELD_NAME>",
modifier = Modifier.fillMaxWidth(),
onViewCreate = { layout, input -> },
onViewUpdate = { layout, input -> }
)
}
}
}Last updated

