新的SEND_SMS Google政策更改可能有哪些解决方法?

时间:2019-01-14 07:28:04

标签: android android-permissions

这是新的play store Permissions Policy提供的链接。我们需要将SEND_SMS功能作为主要的身份验证模式。所以我们需要创建一个解决方法。我们尝试了Intent。但是它没有给出任何成功的回调。我们需要回电以确保是否发送了SMS。

private void invokeSMSIntent(String phoneNumber, String message) {
    Intent sendIntent;
    if ("".equals(phoneNumber) && Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
        String defaultSmsPackageName = Telephony.Sms.getDefaultSmsPackage(this.cordova.getActivity());

        sendIntent = new Intent(Intent.ACTION_SEND);
        sendIntent.setType("text/plain");
        sendIntent.putExtra(Intent.EXTRA_TEXT, message);

        if (defaultSmsPackageName != null) {
            sendIntent.setPackage(defaultSmsPackageName);
        }
    } else {
        sendIntent = new Intent(Intent.ACTION_VIEW);
        sendIntent.putExtra("sms_body", message);
        // See http://stackoverflow.com/questions/7242190/sending-sms-using-intent-does-not-add-recipients-on-some-devices
        sendIntent.putExtra("address", phoneNumber);
        sendIntent.setData(Uri.parse("smsto:" + Uri.encode(phoneNumber)));
    }
    this.cordova.getActivity().startActivity(sendIntent);
    callbackContext.sendPluginResult(new PluginResult(PluginResult.Status.OK));
}

0 个答案:

没有答案