cordova/ionic製做一個文件瀏覽器(一)

開始學習ionic有一段時間了,問遍谷哥和度娘,都沒有找到一個方便好用的文件瀏覽器,因此決定本身寫一個文件瀏覽器。動工以前,先找參考資料,通過篩選,有兩個資料具備參考意義
github上的一個寫好的示例:ionic編寫的
極客學院的教程(參考html file api的教程):cordova編寫的html

根據github上的例子,一步一步寫完之後,悲劇的事情發生了,打開文件瀏覽器一片空白;後來又專門打開視頻看了一遍操做演示,反覆對比沒有遺漏的地方,可是瀏覽器打開仍是一片空白。接着看極客學院的視頻教程,按照操做步驟一步一步作了之後,打開瀏覽器依然是一片空白。下載了教程中提供的資料,裏面有一個apk包,安裝之後,神奇的事情發生了,文件瀏覽器正常顯示了。此刻我陷入了沉思。。。android

爲了排除個別設備的影響,在另一臺設備上從新進行了測試,文件瀏覽器依然是一片空白。既然SD卡根目錄沒法讀取,那就試一下其餘目錄吧,結果卻讓人大跌眼鏡,除了SD卡根目錄,其餘目錄均可以正常讀取。忽然的靈感迸發,會不會是因爲android的版本影響呢,我就用同事android5.1版本(以前測試的都是android6.0)的手機進行了測試,結果讓人喜出望外,文件瀏覽器能夠正常顯示了。git

既然定位到了問題,那就想辦法解決了,原來是因爲android6.0權限控制方面進行了升級,對權限的請求進行了分組,請求讀寫外部存儲設備是「危險」類的請求,須要在運行時進行請求。詳細說明可參考官方說明 中文說明github

針對這個問題,目前我想到了兩個解決辦法:
1.修改android的編譯版本
2.添加運行時請求權限的功能apache

本節就最簡單的第一種方法進行說明
AndroidManifest.xml中修改以下配置android:targetSdkVersion 23(默認值和安裝的cordova版本有關,我這裏安裝的是6.0版本)改成22
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="22" />api

未完待續。。。瀏覽器


運行效果圖:
圖片描述app


參考內容:
一樣是6.0沒法建立文件,啓發了第一種解決思路
啓發了第二種解決思路
請求權限插件
請求權限插件調用示例ionic

相關文章
相關標籤/搜索