全屏通知,如Android调用应用中的来电

时间:2016-11-11 01:32:27

标签: android android-layout

我正在开发视频通话安卓应用程序。我现在的挑战是实现全屏通知类似于内置呼叫应用程序的内置Android,当你有来电时。目前每当我接到电话时,如果电话屏幕关闭,通知会显示为常规通知。如果电话处于唤醒状态,通知会显示为抬头。我希望通知占用全屏,就像通话应用程序一样。我正在使用Galaxy S5进行测试。我在这里错过的是我的代码。提前谢谢你。

        Intent intent = new Intent(this, MainActivity.class);
        intent.putExtra("screen", "debugScreen");
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
                | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS
                | Intent.FLAG_ACTIVITY_NO_USER_ACTION);
        Intent callAcceptIntent = new Intent(this, MyReceiver.class);
        callAcceptIntent.setAction("com.videochat.CALL_INTENT");

        PendingIntent callAcceptPi = PendingIntent.getBroadcast(this,0,callAcceptIntent,0);
    PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, 0);

        NotificationCompat.Builder mBuilder =
            new NotificationCompat.Builder(this)
                    .setContentIntent(pendingIntent)
                    .setSmallIcon(R.drawable.icon)
                    .setContentTitle("My notification")
                    .setContentText("Hello World!")
                    .setTicker("ticker")
                    .setFullScreenIntent(pendingIntent, true)
                    .setOngoing(true)
                    .setCategory(NotificationCompat.CATEGORY_CALL)
                    .setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
                    .setPriority(NotificationCompat.PRIORITY_MAX)
                    .addAction(R.drawable.icon, "Reject",callAcceptPi);

                NotificationManager mNotificationManager =
            (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

0 个答案:

没有答案