Warmup
Warmup ensures that the SoftPOS app and the runtime environment on the device are initialized and ready for transactions
Warmup calls the SoftPOS Application to start performing a series of runtime checks.
You can integrate in two UI environments:
- Traditional Activity / Fragment UI
- Modern Jetpack Compose UI
Warmup Request
Warmup Request do not take any parameters
Option 1 : WarmUp in Activity or Fragment
Use when : your screen is based on AppCompatActivity
or Fragment
.
class MainActivity : AppCompatActivity() {
private val warmUpLauncher = registerForActivityResult(msaPosApi.warmUpContract()) { result ->
when (result) {
is PosResponse.Success -> {
Log.d("WarmUp", "Success: ${result.rspCode} - ${result.rspMsg}")
}
is PosResponse.Failed -> {
Log.e("WarmUp", "Failed: ${result.rspCode} - ${result.rspMsg}")
}
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// Trigger WarmUp
triggerWarmUp()
}
private fun triggerWarmUp() {
warmUpLauncher.launch()
}
}
Option 2 : WarmUp in Jetpack Compose
Use when : your screen is implemented using Compose
.
@Composable
fun WarmUpScreen(msaPosApi: MsaPosApi) {
val context = LocalContext.current
val warmUpLauncher = rememberLauncherForActivityResult(msaPosApi.warmUpContract()) { result ->
when (result) {
is PosResponse.Success -> {
Log.d("WarmUp", "Success: ${result.rspCode} - ${result.rspMsg}")
}
is PosResponse.Failed -> {
Log.e("WarmUp", "Failed: ${result.rspCode} - ${result.rspMsg}")
}
}
}
warmUpLauncher.launch();
}
Warmup Response
{
"respCode" : "0",
"rspMsg": "Success"
}
Updated 1 day ago