Długo szukałem źródła Contacts app na Androida, aby dowiedzieć się, która aktywność obsługuje Intent.ACTION_CALL_PRIVILEGED
. Niestety nie mogłem znaleźć jego kodu źródłowego. Czy ktoś wie jak to się nazywa, a nawet lepiej, skąd mogę go znaleźć? Dziękuję Ci!Która aktywność obsługuje Intent.ACTION_CALL_PRIVILEGED?
6
A
Odpowiedz
11
Co dziwne, Phone application obsługuje zdarzenia związane z połączeniem. ;)
Możesz obejrzeć wyjście ActivityManager
w logcat, aby zobaczyć, który komponent obsługuje konkretną Intent
.
z kodeksu Kontakt źródło:
Intent intent = new Intent(Intent.ACTION_CALL_PRIVILEGED,
Uri.fromParts("tel", number, null));
startActivity(intent);
można odtworzyć ten Intent
w wierszu poleceń:
adb -e shell am start -a android.intent.action.CALL_PRIVILEGED -d tel:12345
co skutkuje następującym (ładnie sformatowany) wyjście logcat:
Starting activity: Intent { act=android.intent.action.CALL_PRIVILEGED dat=tel:12345 flg=0x10000000 cmp=com.android.phone/.PrivilegedOutgoingCallBroadcaster }
To pokazuje, że aplikacja com.android.phone
ma ten konkretny Intent
.
Huh ładny! Wygląda na to, że to, o co prosiłem, nazywa się OutgoingCallBroadcaster. :) – mobilekid
Świetna odpowiedź, dziękuję! – mobilekid
czy możesz mi powiedzieć, w której wersji SDK znajdziesz Intent.ACTION_CALL_PRIVILEGED? Nie mogę go znaleźć, nawet jeśli składnia tego nie pokazuje. Zobacz tylko Intent.ACTION_CALL (sdk 2.1). dzięki –