在Android中注册ConnectionService PhoneAccount时出现问题

时间:2018-07-25 16:35:26

标签: android twilio incoming-call voip-android

我正在尝试将Twilio用于视频通话应用程序,一端是网络,另一端是android。使用Firebase触发从Web到Android的推送通知。我需要将推送通知转换为android应用程序中的“来话呼叫”屏幕,为此我使用了ConnectionService,它已从API 23记录为可用。我已经注册了PhoneAccount,如下所示:

TelecomManager tm = (TelecomManager) getSystemService(Context.TELECOM_SERVICE); 
PhoneAccountHandle phoneAccountHandle = new PhoneAccountHandle(
                new ComponentName(this.getApplicationContext(), MyConnectionService.class),
                "AppName");
PhoneAccount phoneAccount = PhoneAccount.builder(phoneAccountHandle, "AppName")
    .setCapabilities(PhoneAccount.CAPABILITY_CONNECTION_MANAGER).build();
    tm.registerPhoneAccount(phoneAccount);

我第一次在

注册了PhoneAccount
PhoneAccount phoneAccount = PhoneAccount.builder(phoneAccountHandle, "AppName")
  .setCapabilities(PhoneAccount.CAPABILITY_SELF_MANAGED).build();

仅适用于API 26,后来我将其更改为

PhoneAccount phoneAccount = PhoneAccount.builder(phoneAccountHandle, "AppName")
.setCapabilities(PhoneAccount.CAPABILITY_CONNECTION_MANAGER).build(); 

较新版本在API 26中按预期工作,但在较低版本上,却出现了异常

  

java.lang.SecurityException:该PhoneAccountHandle没有为此用户注册!

有人可以解决这个问题吗?

0 个答案:

没有答案
相关问题