场景8:自定义phoneUI
描述
phone ui、事件 相关。
示例代码
YealinkSdk.getPhoneService().getPhoneController().setPhoneUIProxy(new MyPhoneUI());
public class MyPhoneUI extends DefaultCallUI {
//自定义联系人信息
@Override
public AsyncTask matchPhoneContactByNumber(String number, CallBack<Contact,Void> callback) {
return ThreadPool.postCommonJob(new JobReleasable<Contact>("matchCallOutContactByNumber", callback) {
@Override
public Contact run() {
Contact contact = new Contact();
contact.setName("哈哈哈哈 张三");
contact.setJob("产品经理哈哈哈哈");
contact.setAvatarDrawable(AppWrapper.getApp().getDrawable(R.drawable.bg_call_dialing));
return contact;
}
@Override
public void onCallback(Contact contact) {
callback.onSuccess(contact);
}
});
}
//是否要自定义
@Override
public boolean isOverrideMatchPhoneContactByNumber() {
return true;
}
//默认头像
@Override
public Drawable getPhoneDefaultContactAvatarDrawable() {
return AppWrapper.getApp().getDrawable(R.drawable.bg_call_dialing_video);
}
/// 去电提示
@Override
public String phoneCallOutTipContent() {
return "去电提示 哈哈哈哈哈";
}
//来电提示
@Override
public String phoneCallInTipContent() {
return "来电提示 滴滴滴滴滴";
}
//来电背景
@Override
public Drawable getPhoneCallInBackgroundDrawable() {
return AppWrapper.getApp().getDrawable(R.drawable.bg_call_dialing_video);
}
//拨号盘
@Override
public ArrayList<PhoneBarMenuItem> buildPhoneBarMenuItemList() {
ArrayList<PhoneBarMenuItem> items = new ArrayList<>();
items.add(buildPhoneHangUpMenu());
items.add(buildPhoneDialMenu());
items.add(buildPhoneHoldMenu());
items.add(buildPhoneTransferMenu());
items.add(buildPhoneVoiceMenu());
items.add(buildPhoneMeetingMenu());
items.add(buildPhoneShareScreenMenu());
items.add(buildPhoneMicMenu());
items.add(buildPhoneMoreMenu());
return items;
}
//更多
@Override
public ArrayList<PhoneMoreMenuItem> buildPhoneMoreMenuItemList() {
ArrayList<PhoneMoreMenuItem> items = new ArrayList<>();
items.add(buildPhoneFeedbackMenu());
items.add(buildPhoneRecordMenu());
items.add(buildPhoneVideoMenu());
return items;
}
}