Recket Native 模块中的 ussd 读卡器

问题描述 投票:0回答:1

我有这段代码,当我想要的手机没有打开该窗口时,它会打开一个窗口并向我发送结果,以React Native方式将ussd发送到前端

class UssdModule(reactContext: ReactApplicationContext) : ReactContextBaseJavaModule(reactContext) {

    override fun getName(): String {
        return "UssdModule"
    }

    @ReactMethod
    fun openUssdDialog(ussdCode: String) {
        val encodedUssdCode = Uri.encode(ussdCode)
        val intent = Intent(Intent.ACTION_CALL, Uri.parse("tel:$encodedUssdCode"))
        intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
        currentActivity?.startActivity(intent)
    }
}
android reactjs react-native kotlin ussd
1个回答
0
投票

Android 没有 USSD API。对于任何拨号器应用程序都不需要与 USSD 一起使用(请记住,拨号器应用程序是一个应用程序,可能会更改)。不建议在 Android 应用程序中使用 USSD,因为它是否有效将取决于 OEM 安装的应用程序、客户是否安装了自定义拨号器,以及最终让它与您的任何设备兼容。由于不存在 API,我们将不得不做一些 hacky 的事情。

实际上 - USSD 是一种死技术。它存在于数据时代之前,提供有限的网络调用能力。在现代,每部手机都有数据,通过网络服务使用它没有任何优势。

© www.soinside.com 2019 - 2024. All rights reserved.