johnboyman
- Forum posts: 1
Nov 6, 2015, 8:48:35 AM via Website
Nov 6, 2015 8:48:35 AM via Website
Hello. I am trying to over ride the android incoming call screen. I have succeeded so far with the following code. `
enter code here
BroadcastReceiver myBroadcastReceiver = new BroadcastReceiver() {
public boolean viewCreated = false;
public WindowManager wm=null;
public LinearLayout ly = null;
@Override
public void onReceive (Context mContext, Intent intent)
{
android.widget.Toast.makeText(mContext, "!!!!!!!!!!!!!!!!!!!!!!!!!!11", android.widget.Toast.LENGTH_SHORT).show();
try {
if(wm==null) {
String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE);
if (!viewCreated) {
wm = ((WindowManager) getApplicationContext().getSystemService(Service.WINDOW_SERVICE));
//ly = new LinearLayout(mContext);
WindowManager.LayoutParams params = new WindowManager.LayoutParams(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.TYPE_SYSTEM_ALERT | WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY, WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, PixelFormat.TRANSPARENT);
if (state.equals(TelephonyManager.EXTRA_STATE_RINGING)) {
Toast.makeText(mContext, "Phone Is Ringing", Toast.LENGTH_LONG).show();
// Intent intent1 = new Intent(mContext, incomingcallscreeen.class);
mContext1=mContext;
params.height = WindowManager.LayoutParams.MATCH_PARENT;
params.width = WindowManager.LayoutParams.MATCH_PARENT;
params.format = PixelFormat.TRANSPARENT;
params.gravity = Gravity.TOP;
final LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
// ly = (LinearLayout) inflater.inflate(R.layout.incomingcallscreen, null);
WindowManager.LayoutParams params1 = new WindowManager.LayoutParams(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.TYPE_SYSTEM_ALERT | WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY, WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, PixelFormat.TRANSPARENT);
params1.height = WindowManager.LayoutParams.MATCH_PARENT;
params1.width = WindowManager.LayoutParams.MATCH_PARENT;
params1.format = PixelFormat.TRANSPARENT;
params1.gravity = Gravity.TOP;
ly = (LinearLayout) inflater.inflate(R.layout.incomingcallscreen, null);
ly.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Toast.makeText(mContext1, "clicked!!!", Toast.LENGTH_LONG).show();
}
});
}
};
`
I can get my incoming call screen to show up, but I cant hook up any onclick events to any of the buttons or even just the plain layout. When I try it doesn't even error nothing happens. Thanks bye.
Recommended editorial content
With your consent, external content is loaded here.
By clicking on the button above, you agree that external content may be displayed to you. Personal data may be transmitted to third-party providers in the process. You can find more information about this in our Privacy Policy.