本人小白在學習程序中發現監聽電話彈出顯示來電的視窗無法移除,
來電時可以彈出視窗,但掛斷后視窗無法移除,使用removeViewImmediate()也不行。
實在百思不得其解,敬請各位幫助一下,謝謝!代碼如下:
public class MyReceiver extends BroadcastReceiver {
public final String TAG = "MyReceiver";
private WindowManager mWinMgr;
private TextView mTxtView;
public MyReceiver() {
}
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (intent.getAction().equals(TelephonyManager.ACTION_PHONE_STATE_CHANGED)) {
String phoneNumber = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);
TelephonyManager telephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
int state = telephony.getCallState();
Log.e(TAG, "state=" + state + ",phoneNumber=" + phoneNumber);
switch (state) {
case TelephonyManager.CALL_STATE_RINGING:
Log.e(TAG, "CALL_STATE_RINGING=" + state);
mWinMgr = (WindowManager) context.getApplicationContext().getSystemService(Context.WINDOW_SERVICE);
WindowManager.LayoutParams params = new WindowManager.LayoutParams();
params.type = WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY;
params.flags = WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL;
params.flags |= WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
params.width = WindowManager.LayoutParams.MATCH_PARENT;
params.height = WindowManager.LayoutParams.WRAP_CONTENT;
params.gravity = Gravity.TOP;
params.format = PixelFormat.RGBA_8888;
mTxtView = new TextView(context);
mTxtView.setLayoutParams(new ViewGroup.LayoutParams(WindowManager.LayoutParams.MATCH_PARENT,WindowManager.LayoutParams.WRAP_CONTENT));
mTxtView.setText("來電號碼:" + phoneNumber);
mTxtView.setTextColor(0xFFFFFFFF);
mWinMgr.addView(mTxtView, params);
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
if (mWinMgr != null) {
mWinMgr.removeView(mTxtView);
}
break;
case TelephonyManager.CALL_STATE_IDLE:
if (mWinMgr != null) {
mWinMgr.removeView(mTxtView);
}
break;
default:
if (mWinMgr != null) {
mWinMgr.removeView(mTxtView);
break;
}
}
}
}
uj5u.com熱心網友回復:
通過其他方法,自己解決了,轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/37356.html
標籤:Android
上一篇:各位php微信開發大佬幫幫忙
