2017-08-10 108 views
0

我在我的項目中使用這個庫:https://github.com/recruit-lifestyle/FloatingView的Android權限被拒絕窗式2007

,我得到這個錯誤: Click here for picture of error

這個庫不工作的棉花糖和牛軋糖。

代碼:

final LayoutInflater inflater = LayoutInflater.from(bCon); 
    final ImageView iconView = (ImageView)  inflater.inflate(R.layout.widget_chathead, null, false); 

final DisplayMetrics metrics = new DisplayMetrics(); 
     final WindowManager windowManager = (WindowManager)bCon.getSystemService(Context.WINDOW_SERVICE); 
     windowManager.getDefaultDisplay().getMetrics(metrics); 
     mFloatingViewManager = new FloatingViewManager(bCon, this); 
     mFloatingViewManager.setFixedTrashIconImage(R.drawable.ic_trash_fixed); 
     mFloatingViewManager.setActionTrashIconImage(R.drawable.ic_trash_action); 
     final FloatingViewManager.Options options = new FloatingViewManager.Options(); 
     options.overMargin = (int) (16 * metrics.density); 
     mFloatingViewManager.addViewToWindow(iconView, options); 
+0

@EJoshuaS無法添加窗口android.view.ViewRootlm[email protected] - 針對窗口類型2007的權限denides –

回答

1

此庫使用SYSTEM_ALERT_WINDOW許可

從版本的Android M起每個應用程序,請求SYSTEM_ALERT_WINDOW權限,並通過Play商店(版本6.0.5或更高版本是必需的),將擁有爲應用程序自動授予的權限。

如果應用程序未從Play商店安裝,則不會自動授予該權限。您必須在運行時手動請求此權限,就像從Android M及以上版本處理其他危險權限一樣。

+0

如何在Google Play上獲取系統警報窗口應用程序?我沒有找到 –

+0

它不是一個應用程序。這意味着如果您的應用程序使用該權限,則將自動從遊戲商店下載該權限。但是,如果您從別處安裝,則必須通過代碼手動請求權限。 –

+0

好的,那我怎樣才能在Play商店中獲得系統警報窗口?因爲沒有安裝 –