2012-03-21 34 views
5

Tôi có thể tạo hồ sơ sip bằng cách sử dụng lớp SipProfile.Builder. Tôi đã sử dụng đoạn mã sau để làm điều đó:Xây dựng Hồ sơ Sip: Android

if (SipManager.isApiSupported(MyActivity.this)&& SipManager.isVoipSupported(MyActivity.this)) { 

SipManager manager=SipManager.newInstance(this); 
    SipProfile.Builder builder;try { 
           builder = new Builder(userName,domainName); 
          } catch (ParseException e) { 
           // TODO Auto-generated catch block 
           e.printStackTrace(); 
          }               manager = SipManager.newInstance(MyActivity.this); 
          builder.setPassword(password); 

          profile = builder.build(); 
          try { 
           manager.open(profile); 
          } catch (SipException e) { 


       // TODO Auto-generated catch block 
          e.printStackTrace(); 
         } 
         try { 
          manager.register(profile, 30, MyActivity.this); 
         } catch (SipException e) { 
          // TODO Auto-generated catch block 
          e.printStackTrace(); 
         } 
         Toast.makeText(MyActivity.this, "created", 
           Toast.LENGTH_LONG).show(); 

         } else { 
        Toast.makeText(MyActivity.this, "Not Supported", 
          Toast.LENGTH_LONG).show(); 
       } 

Nó hiển thị như một tài khoản nhâm nhi trong cài đặt/cuộc gọi/cài đặt cuộc gọi Internet. Vấn đề là tôi không thể làm cho nó như là tài khoản chính. Làm thế nào tôi có thể làm cho nó như là tài khoản chính?

+0

Bạn có thể giải thích ý nghĩa của "tài khoản chính" không? – hovanessyan

+0

trong khi thêm tài khoản sip theo cách thủ công trong điện thoại, có một tùy chọn "Đặt tài khoản này làm tài khoản chính". Vì vậy, làm thế nào tôi có thể làm cho nó lập trình. –

Trả lời

2

Thông tin này dựa trên tài khoản (địa chỉ email chính cho người, số điện thoại chính, tài khoản SIP chính, v.v.) để nó được lưu trữ trong sổ liên lạc của điện thoại.

Dường như với tôi đó là tùy chọn được đặt cho mỗi dữ liệu, mỗi tài khoản (ví dụ: loại dữ liệu này (email/điện thoại/sip-addr) đặt làm dữ liệu chính). Bạn có thể thiết lập dữ liệu như chính cho một số liên lạc sử dụng IS_PRIMARY hoặc IS_SUPER_PRIMARY

IS_PRIMARY: Cho dù đây là sự xâm nhập chủ yếu của loại hình này cho các nguyên xúc nó thuộc về.

Dữ liệu bạn nên sử dụng là ContactsContract.CommonDataKinds.SipAddress. Tôi hy vọng đó là hữu ích như là điểm khởi đầu.

Các vấn đề liên quan