Как создать в Android головной пузырь, как в Viber (или что-то подобное в Facebook meesenger)? - PullRequest
0 голосов
/ 21 января 2020

Я уже создал пузырь головы, который отлично работает на старых API до 28. На последнем API 29 я не могу открыть приложение крана из фона.

Вот скриншот головы пузыря

Снимок экрана с пузырем на голове, когда приложение находится в фоновом режиме

Вот мой текущий код ...

override fun onCreate() {
      super.onCreate()
      mCallHeadView = 
      LayoutInflater.from(this).inflate(R.layout.call_head, null);
      var params: WindowManager.LayoutParams = WindowManager.LayoutParams(
         WindowManager.LayoutParams.WRAP_CONTENT,
         WindowManager.LayoutParams.WRAP_CONTENT,
         LayoutParams.TYPE_APPLICATION_OVERLAY,
         WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
         PixelFormat.TRANSLUCENT
      )
      //val params = LayoutParams(LayoutParams.WRAP_CONTENT, 
     LayoutParams.WRAP_CONTENT, LayoutParams.TYPE_PHONE, 
     LayoutParams.FLAG_NOT_FOCUSABLE, PixelFormat.TRANSLUCENT)
      params.gravity = Gravity.TOP or  Gravity.END
      params.x = 0
      params.y = 270

      mWindowManager = getSystemService(WINDOW_SERVICE) as? WindowManager;
      if( mWindowManager != null){
         mWindowManager!!.addView(mCallHeadView, params);
      }
      var closeButton = mCallHeadView!!.findViewById<ConstraintLayout> . 
      (R.id.callHead)
      closeButton.setOnClickListener {
         val i = Intent()
         i.setClass(this,MainActivity::class.java)
         i.flags = Intent.FLAG_ACTIVITY_NEW_TASK
         startActivity(i)
         stopSelf()

      }

1 Ответ

0 голосов
/ 21 января 2020

Поскольку реализация Bubbles отличается в новых версиях Android (28 или выше)
, поэтому попробуйте следовать Android Документации или любому новому учебнику, например this

...