einen Benutzer gesendet Bildschirm zu wählen ist ziemlich geradlinig mit diesem CodeBerechtigungen Erteilen mit Action_Call Absicht zur Laufzeit
EditText firstNumber;
Button btnAdd;
String hash;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main23);
btnAdd = (Button)findViewById(R.id.button2);
btnAdd.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
try {
EditText et = (EditText) findViewById(R.id.editText);
String text= et.getEditableText().toString();
hash = "#";
Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:*221*" + text + "hash"));
startActivity(intent);
} catch (Exception e) {
}
}
});
}
Jedoch, wenn ich ein Benutzer möchte einen Anruf automatisch an, um von einer Schaltfläche klicken Sie auf die Schaltfläche sollte automatisch make ein Anruf. Ich stelle es haben sich mit android.permission.CALL_PHONE, verwende ich diese Code unten ....
EditText firstNumber;
EditText secondNumber;
Button btnAdd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
//assigning where the button5 to btnAdd
btnAdd = (Button)findViewById(R.id.button5);
// set up my setOnClickListener for button
btnAdd.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
try {
//stores whats inside of the editText2 to et and et2
EditText et = (EditText) findViewById(R.id.editText2);
EditText et2 = (EditText) findViewById(R.id.editText5);
//stores whats been sent to et and et2 variables to text and text2
String text= et.getEditableText().toString();
String text2 =et2.getEditableText().toString();
// new intent to take user to dial screen and make the call automatically.
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:*215*" + text + "*" + text2 + "#"));
callIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// crashes here "i get red squigglies here "
startActivity(callIntent);
} catch (Exception e) {
}
}
});
}
ich einen verschnörkelten unter startActivity (callIntent) erhalten; besagt, dass "Anruf erfordert eine Berechtigung, die vom Benutzer abgelehnt werden kann. Code, um explizit zu überprüfen, ob die Berechtigung verfügbar ist". Wie kann ich es zur Laufzeit ausführen?
Siehe [Anfordern von Berechtigungen zur Laufzeit] (https://developer.android.com/training/permissions/requesting.html) – reVerse
ja, aber ich verstehe immer noch nicht. bitte hilfe –