Android中下載的圖片不能顯示,開機後才能顯示(大全)
之所以要補充這次,是因為第一次寫的並沒有解決我的bug,真正的解決方法在分割線下
問題情景:
我自己做了個雲相簿,最重要的功能就是上傳下載功能,下載的時候我會把下載的照片放到一個新建的資料夾下,之前測試的時候,隱藏了一個bug,今天把新建檔案下的照片都刪除了,再次下載時就看不到照片了,只有重啟以後才能看到照片,新建的資料夾才會出現,繼續下載都會在資料夾下顯示,無需重啟了,只有初次下載時會這樣,於是乎,我在網上搜了一番,網上眾說紛紜,最終解決了問題,現在把解決問題的過程記錄下,也算是自己的經驗分享吧,需要的直接拿走,有用請點贊啦~~~
解決辦法:
try {
MediaStore.Images .Media.insertImage(getContentResolver(), Constants.downloadPath + File.separator
+ info.getFileName(), "", "");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
下面貼出這個函式的原始碼:
/**
* Insert an image and create a thumbnail for it.
*
* @param cr The content resolver to use
* @param imagePath The path to the image to insert
* @param name The name of the image
* @param description The description of the image
* @return The URL to the newly created image
* @throws FileNotFoundException
*/
public static final String insertImage(ContentResolver cr, String imagePath,
String name, String description) throws FileNotFoundException {
// Check if file exists with a FileInputStream
FileInputStream stream = new FileInputStream(imagePath);
try {
Bitmap bm = BitmapFactory.decodeFile(imagePath);
String ret = insertImage(cr, bm, name, description);
bm.recycle();
return ret;
} finally {
try {
stream.close();
} catch (IOException e) {
}
}
}
我是在下載圖片後直接添加了上面的那句程式碼就好使了,網上有的說還需要發廣播,反正我是沒有發,也達到我的目的了,因此大家則需而用吧~~~
——————————-我是分割線————————————–
上邊的那個bug隱藏得很深,原以為解決了問題,卻發現是自己大意了,問題根本沒有解決,又被深度隱藏起來了,無奈,又得繼續尋找解決辦法了,
本來以為上面的已經解決了問題,下面找到了某位同學的部落格是這樣的:
部落格地址:http://blog.csdn.net/loongggdroid/article/details/18985841
我們或許經常會遇到這種情況,明明儲存了圖片,但是當你開啟圖片時,卻沒有找到這張圖片,手機重啟之後才能看到。這是因為SD卡並沒有重新掛載,相簿也無法把這張圖片載入進去,解決這個問題非常簡單,只需要我們模擬一個廣播,使SD卡重新掛載即可!方法如下:
/**
* 傳送廣播,重新掛載SD卡
*/
private void sendBroadCaseRemountSDcard() {
Intent intent = new Intent();
// 重新掛載的動作
intent.setAction(Intent.ACTION_MEDIA_MOUNTED);
// 要重新掛載的路徑
intent.setData(Uri.fromFile(Environment.getExternalStorageDirectory()));
sendBroadcast(intent);
}
其實上邊這位同學的解決辦法並沒有什麼不妥,但是我的除錯系統是4.4.2,而Android4.4不允許這樣發廣播,會報異常,是因為Android4.4限制了許可權,於是乎,又搜尋了一番,建議這麼做:
MediaScannerConnection.scanFile(this, new String[]{info.getFilePath()}, null,null);
這樣才真正的解決了我的問題,真是歷盡千辛萬苦啊,上邊的函式的第二個引數一定要寫對啊,我一開始也用了這個方法,但是引數沒有給對,一直沒效果,我就繞過了這個方法,迂迴了好大一圈,還是它解決的問題,所以一定要留意哦~~~
相關推薦
Android中下載的圖片不能顯示,開機後才能顯示(大全)
之所以要補充這次,是因為第一次寫的並沒有解決我的bug,真正的解決方法在分割線下 問題情景: 我自己做了個雲相簿,最重要的功能就是上傳下載功能,下載的時候我會把下載的照片放到一個新建的資料夾下,之前測試的時候,隱藏了一個bug,今天把新建檔案下的照片都刪除了
將app變為桌面程式,開機後不再顯示原桌面,而是顯示我們的app介面
兩步完成: 1.如圖 在專案清單跟節點加入android:installLocation="internalOnly",指定你的app安裝到記憶體中。 2.如圖 在第一個要啟動的activity的filter中加入圖中程式碼,讓app成為主程式。
Android中多圖片選擇器PhotoPicker庫的使用(仿微信,秒殺MultiImageSelector)
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); i
Android中多圖片選擇器ImagePicker庫的使用(仿微信、非常容易整合)
原文地址: https://github.com/jeasonlzy/ImagePickerImagePickerAndroid自定義相簿,完全仿微信UI,實現了拍照、圖片選擇(單選/多選)、 裁剪 、旋轉、等功能。由於個人時間有限,該專案停止維護如果你發現有bug,或者好的
使用VMware將Linux裝在物理硬盤上,開機即可進入Linux (轉)
width system 成了 保存 2.6 圖片地址 init bold boot 目錄(?)[-] 本文目的 具體操作 1 軟件準備 2 安裝 21 對硬盤操作 22 創建虛擬機並安裝 23 使用Grub引導Linux 1. 本文目的 適合於
Android中對話方塊右上角關閉懸浮按鈕的實現(總結)
其實很簡單,步驟如下: 1、需要把對話方塊的預設背景改為透明。 方法:自定義Dialog的樣式。 <!--對話方塊透明背景--> <style name="Translucent_NoTitle" parent="android:style/Theme
將JAR包反編譯,修改後重新打包(轉)
有道是,知其然才知其所以然。有時候,我們必須讀取jar裡的打包的類。而有時還有可能要對它進行小量修改,使之適用於自己的非凡需求。前期預備 Java反編譯工具: JGUI http://pan.baidu.com/s/1o6xCtsQ 壓縮工具: Winrar開始 1. 將jar包
Android中的多渠道打包之友盟統計篇(二)
上篇簡單瞭解了Android中的多渠道打包,這篇主要說正事了---》 如何多渠道打包: 首先,多渠道打包最重要的是可以統計不同渠道下的應用的情況,比如下載量,日活量等等.. 關於統計的話國內有兩個比較出名的第三方統計工具吧:友盟統計和百度移動統計 這篇說的是用友盟,如果想要
在faster rcnn中使用soft nms,faster rcnn的改進(一)
1. 背景介紹 我的專案是利用faster rcnn檢測kiiti資料集,用原始nms,iters = 10000的情況下,得到的mAP = 0.586, 在改用soft nms後,其他引數均不變的情況下,得到的mAP = 0.622。算是挺大的改進了,所以分
Android中Service的使用詳解和注意點(LocalService)
開始,先稍稍講一點android中Service的概念和用途吧~ Service分為本地服務(LocalService)和遠端服務(RemoteService): 1、本地服務依附在主程序上而不是獨立的程序,這樣在一定程度上節約了資源,另外Local服務因為是在同一程序因此
當 xml中存在名稱空間,三種處理辦法(dom4j)
{ Map map = new HashMap(); map.put( " design " , " http://www.eclipse.org/birt/2005/design " ); SAXReader saxReader = new SAX
Android : 執行緒的結束,掛起和恢復(上)
實踐證明,上述情況下,建立的執行緒並不會自動銷燬,而是仍然在後臺默默無聞地執行,直到自行結束。Android的這種設計是無可厚非的。從理論上來解釋,應用的最小執行單位是執行緒,最小資源單位是程序,一個程序可以包含多個執行緒,而多個執行緒共享同一個所屬程序的資源。因此,個人理解Android的應用其實就是一個程
Android Studio常用功能配置,讓開發更高效(一)
1、程式碼提示不區分大小寫 File | Settings 開啟設定,選擇Editor | General | Code Completion Case sensitive completion
Android中GridView水平滾動和垂直滾動的實現(動態)
經過本人實驗,完美實現水平滾動和垂直滾動。話不多說,先看佈局檔案: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com
自己寫的加密網頁,與百度網盤私密很相似,需要密碼才能訪問(原創)
audio 查詢 數字 code 頁面 time AR 開發 其他 題記: 馬上就要招聘了,所以我打算放置簡歷在自己的網頁上,但是又不想給除了招聘的人,或者我指定的人外看,所以我需要對網頁頁面加密 我找了許多資料,查看了許多所謂的頁面加密,但是有60%左右都是網頁鎖,
Android中相機拍攝照片,以及相簿選擇圖片壓縮上傳(壓縮後儲存進SD中)(可用於修改頭像等)
這個功能借鑑了多個大神的,然後整合起來。 Android中相機拍攝照片,以及相簿選擇圖片壓縮上傳(壓縮後儲存進SD中)(可用 於修改頭像等) 第一步: privat
Android中Gif圖片的顯示
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
Android中在app被系統釋放後,重新回到前臺時,重建Activity出現Fragment重疊現象
android 開發中Frgment應用場景非常廣泛,應用Fragment是必須使用FragmentActivity,有時候會出現這樣一種情況,在應用退到後臺後,系統會在記憶體不足時將應用回收掉,再次啟動應用會出現Activity中的Fragment重疊現象,其實出現問題的原因是這樣的,
從網路中下載圖片並進行顯示
通過get請求方式獲取網路圖片----主要是方便以後查閱以及做一個筆記 任務要求: 1.新建一個佈局檔案,在佈局檔案中新增Button、ImageView兩個控制元件 2.新建一個GetPictThread實現Runnable介面 (1)定義一個handler用於
android中關於圖片分享到QQ或者微信,朋友圈及其他(免SDK)
最近又做了一個關於圖片分享到朋友圈的一個小功能,起先想到的是要新增比如QQ 或者微信以及其他工具的API,但是很麻煩,還要申請一些亂七八糟的東西並且得通過,才能用。 於是就在網上找一些關於圖片分享的資料,僅供參考(親測可用),,僅限圖片的分享,但是免去了上面所說的那些繁瑣