2015-07-09 2 views
0

Я пытаюсь сделать проект андроида, который наберет фиксированное число. Он работает, когда я использую нормальное число, например, 01712364445 или что-то в этом роде. Но когда я использую этот номер * 566 #, он набирает номер * 567, который # отсутствует. Как решить это? Мой код здесь ...Андроид до фиксированного номера

gp = (Button) findViewById(R.id.buttongp); 
    gp.setOnClickListener(listener); 


    } 
OnClickListener listener = new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 
     Intent dialerIntent = new Intent(); 
     dialerIntent.setAction(Intent.ACTION_CALL); 
     dialerIntent.setData(Uri.parse("tel:*566# ")); 

     startActivity(dialerIntent); 

    } 
}; 

ответ

0
Intent callIntent = new Intent(Intent.ACTION_CALL); 
string pnd=uri.encode("#");  callIntent.setData(Uri.parse("tel:566 "+pnd));  startActivity(callIntent); 

Попробуйте
и сделать конструктор глобальной перед основной функцией

Edit: Этот код работает

Button b; 
    Intent callIntent = new Intent(Intent.ACTION_CALL); 
    String pnd; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) 
{ 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
b=(Button)findViewById(R.id.b1); 

    OnClickListener ls=new OnClickListener(){ 

     @Override 
     public void onClick(View p1) 
     { 
      { 
       pnd=Uri.encode("#"); 
       callIntent.setData(Uri.parse("tel:*566 "+pnd)); 
       startActivity(callIntent); 
      } 
      // TODO: Implement this method 
     } 
    }; 
    b.setOnClickListener(ls); 

    } 

}

И uri.encode ("#"); помещает там знак фунта, извлекает код ussd. Выполните процедуры и соедините uri.encode ("#");

протестирована и работает

Испытано с помощью AIDE для Android. Это то, как я создаю свои приложения со своего смартфона.

+0

еще не работает. и вы пропустили *. Я хочу набрать * 566 # – Sawpno

+0

Он должен работать после того, как вы поместите uri.encode ("#"); и конкатенировать pnd. –

Смежные вопросы