如何在Android设备中检测来电?我正试着制作一个应用程序,当一个电话打到电话时,我想检测到这个号码。下面是我试过的,但它没有检测到来电。我想运行我的MainActivity在背景中,我怎么能做到呢?我已经批准了manifest档案。<uses-permission android:name="android.permission.READ_PHONE_STATE"/>在舱单上还有什么需要我提供的吗?public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test_layout);
}
public class myPhoneStateChangeListener extends PhoneStateListener {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
super.onCallStateChanged(state, incomingNumber);
if (state == TelephonyManager.CALL_STATE_RINGING) {
String phoneNumber = incomingNumber;
}
}
}}
3 回答
![?](http://img1.sycdn.imooc.com/533e4d00000171e602000200-100-100.jpg)
繁华开满天机
TA贡献1816条经验 获得超4个赞
private MyPhoneStateListener phoneStateListener = new MyPhoneStateListener();
TelephonyManager telephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);telephonyManager.listen(phoneStateListener, PhoneStateListener.LISTEN_CALL_STATE);
TelephonyManager telephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);telephonyManager.listen(phoneStateListener, PhoneStateListener.LISTEN_NONE);
- 3 回答
- 0 关注
- 538 浏览
添加回答
举报
0/150
提交
取消