最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android開發(fā)案例手冊Application跳出dialog

 更新時間:2022年06月08日 17:08:42   作者:芝麻粒兒  
這篇文章主要為大家介紹了Android開發(fā)案例手冊Application跳出dialog,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

??實踐過程

??場景還原

線程中監(jiān)測和硬件的連接,在任何斷開的話需要彈出框給用戶選擇是否重新連接。

所以我們的思路就是不使用依托于Activity的Dialog,而是使用依托于Aplication的Dialog。

??開始

首先是動態(tài)申請權限

<!--這行代碼必須存在,否則點擊不了系統(tǒng)設置中的按鈕-->
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>? 
<uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" />

用戶不同意?那就用不了App就行了,我們一般都是如果沒給權限直接退出應用。

現(xiàn)在哪個App不是必須要權限,看似允許用戶自主同意,但哪個不是拒絕后無法使用功能。

所以不用太糾結。

接著在硬件設備斷開連接的回調(diào)中處理

//設備斷開連接的回調(diào)  isAutoConnectDlg是個dialog彈框

override fun onClientRemove(address: String?, alias: String?) {
??? //禁止外部點擊取消
??? isAutoConnectDlg!!.setCanceledOnTouchOutside(false)
??? isAutoConnectDlg!!.setCancelable(false)
??? dlgWindows.setWindowAnimations(R.style.DialogRight)
??? //重要 設置彈框類型
??? if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
??????? dlgWindows.setType(WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY)
??? } else {
??????? dlgWindows.setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT)
??? }
??? dlgWindows.setLayout(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT)
??? isAutoConnectDlg!!.show()
}

之后在連接成功的回調(diào)中取消該彈框即可。

至此基本就可以了。但是還有個特殊情況,就是彈出框后用戶按下了Home也就是回到了桌面,或者是Android的后臺殺進程界面 都會造成該彈框顯示,影響不太好。

這時候就需要我們自定義Application,然后實現(xiàn)ActivityLifecycleCallbacks接口即可,該接口在Android 4.0 就已經(jīng)退出了,注冊后,所有的Activity生命周期都會回調(diào),方便監(jiān)聽處理業(yè)務。

因為進入后臺頁面,Activity的pause和stop這些就會執(zhí)行,我們每個Activity去監(jiān)聽不太合適,所以ActivityLifecycleCallbacks是很好的選擇。

class MyApp : Application(), Application.ActivityLifecycleCallbacks {
??? override fun onCreate() {
??????? super.onCreate()
??????? registerActivityLifecycleCallbacks(this)
??? }
??? override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?) {
??????? TODO("Not yet implemented")
??? }
??? override fun onActivityStarted(activity: Activity) {
??????? TODO("Not yet implemented")
??? }
??? override fun onActivityResumed(activity: Activity) {
??????? TODO("Not yet implemented")
??? }
??? override fun onActivityPaused(activity: Activity) {
??????? //在這進行彈框處理
??? }
??? override fun onActivityStopped(activity: Activity) {
??????? //在這進行彈框處理
??? }
??? override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) {
??????? TODO("Not yet implemented")
??? }
??? override fun onActivityDestroyed(activity: Activity) {
??????? TODO("Not yet implemented")
??? }
}

??可能會遇見的bug

permission denied for window type 2003

就是沒有動態(tài)申請權限導致的問題。

以上就是Android開發(fā)案例手冊Application跳出dialog的詳細內(nèi)容,更多關于Android開發(fā)Application跳出dialog的資料請關注腳本之家其它相關文章!

相關文章

  • AndroidStudio修改Code Style來格式化自定義標簽的xml文件方式

    AndroidStudio修改Code Style來格式化自定義標簽的xml文件方式

    這篇文章主要介紹了AndroidStudio修改Code Style來格式化自定義標簽的xml文件方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • Android studio保存logcat日志到本地的操作

    Android studio保存logcat日志到本地的操作

    這篇文章主要介紹了Android studio保存logcat日志到本地的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Android viewpage實現(xiàn)可控制的禁止滑動

    Android viewpage實現(xiàn)可控制的禁止滑動

    這篇文章主要為大家詳細介紹了Android viewpage實現(xiàn)可控制的禁止滑動,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • Android仿簡書長按文章生成圖片效果

    Android仿簡書長按文章生成圖片效果

    使用簡書APP的同學都知道,簡書有這樣一個功能;文章頁長按內(nèi)容時底部會出現(xiàn)一個 生成圖片分享 的按鈕,點擊之后就可以將當前的文章生成一張長圖片;這張圖片可以保存到本地或分享給好友,同時還可為圖片設置成為白和黑兩種風格,很有藝術范
    2017-03-03
  • Android實現(xiàn)圖片添加陰影效果的2種方法

    Android實現(xiàn)圖片添加陰影效果的2種方法

    這篇文章主要介紹了Android實現(xiàn)圖片添加陰影效果的2種方法,第一種方法是自定義drawable,第二種方式就是自定義view,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 使用TransitionDrawable實現(xiàn)多張圖片淡入淡出效果

    使用TransitionDrawable實現(xiàn)多張圖片淡入淡出效果

    這篇文章主要為大家詳細介紹了使用TransitionDrawable實現(xiàn)多張圖片淡入淡出效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Android 坐標系與視圖坐標系圖解分析

    Android 坐標系與視圖坐標系圖解分析

    下面小編就為大家?guī)硪黄狝ndroid 坐標系與視圖坐標系圖解分析。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • Android二維碼的生成與掃碼-zxing示例代碼

    Android二維碼的生成與掃碼-zxing示例代碼

    本篇文章主要介紹了Android二維碼的生成與掃碼-zxing示例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-03-03
  • Android編程之ProgressBar圓形進度條顏色設置方法

    Android編程之ProgressBar圓形進度條顏色設置方法

    這篇文章主要介紹了Android編程之ProgressBar圓形進度條顏色設置方法,涉及ProgressBar布局及屬性設置相關操作技巧,需要的朋友可以參考下
    2017-02-02
  • 利用Android畫圓弧canvas.drawArc()實例詳解

    利用Android畫圓弧canvas.drawArc()實例詳解

    這篇文章主要給大家介紹了關于利用Android畫圓弧canvas.drawArc()的相關資料,文中通過示例代碼介紹的非常詳細,對大家的理解和學習具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-11-11

最新評論

渑池县| 哈巴河县| 平乐县| 大理市| 修武县| 霍山县| 宁河县| 松滋市| 双桥区| 恭城| 光泽县| 米林县| 深泽县| 沧州市| 泰顺县| 茌平县| 揭西县| 井研县| 威信县| 潼南县| 博野县| 赣州市| 博罗县| 施甸县| 汝南县| 西丰县| 玛多县| 内黄县| 太仓市| 山东| 商丘市| 扎赉特旗| 永登县| 浮梁县| 白水县| 盐城市| 商水县| 茶陵县| 广东省| 甘洛县| 武冈市|