我正在构建一个自定义电容器插件来获取用户的电话号码。我将电容器 3 与 Ionic 6 一起使用。
我找到了一个未被弃用的解决方案,并且是最近才获取用户的电话号码。
这是我获取电话号码的代码 -
private void requestHint() {
HintRequest hintRequest = new HintRequest.Builder()
.setPhoneNumberIdentifierSupported(true)
.build();
PendingIntent intent = Credentials.getClient(getActivity()).getHintPickerIntent(hintRequest);
IntentSenderRequest.Builder intentSenderRequest = new IntentSenderRequest.Builder(intent.getIntentSender());
hintLauncher.launch(intentSenderRequest.build());
}
ActivityResultLauncher<IntentSenderRequest> hintLauncher = registerForActivityResult(new ActivityResultContracts.StartIntentSenderForResult(),
result -> {
if(result!=null && result.getData()!=null){
Intent data = result.getData();
Credential credential = data.getParcelableExtra(Credential.EXTRA_KEY);
String phoneNum = credential.getId();
}
});
但我在 Android Studio 上遇到错误“无法解析“NumberPluginPlugin”中的方法“registerForActivityResult”'"
我在这里缺少什么?
根据网上一些人的建议,我添加了以下依赖项 -
implementation "androidx.fragment:fragment:1.4.1"
implementation "androidx.activity:activity:1.4.0"
implementation "androidx.appcompat:appcompat:$androidxAppCompatVersion"
我仍然不确定这里出了什么问题。
registerForActivityResult
可以在里面调用AppCompatActivity
or Fragment
(当你使用AndroidX时),而不是一些自定义的NumberPluginPlugin
类(它不扩展上面提到的类)。
请注意,没有这样的共同方法Activity https://developer.android.com/reference/android/app/Activity,仅AndroidX扩展Activity
带来了这个功能。
HERE https://medium.com/realm/startactivityforresult-is-deprecated-82888d149f5d您可以找到一些关于如何实现这种新方法的文章(也可以与旧的、已弃用的方法进行比较)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)