[問題] Activity存取SD卡 意外出錯
各位版上的大大們
如題 我寫的程式無法正常讀取SD卡
嚴格來說 應該是我可以存取SD卡
我一般正常放在SD卡裡面的東西是可以讀取的
但是問題就在於我用這個我寫的APP在 A Activity 建立了一個資料夾
並且把圖片丟進去
(這時候用android的多工切換到檔案管理器識可以看到那個資料夾以及圖片的)
但是 "重點" 是
我這個時候退出 A Activity 進入 B Activity
想要用B 讀取我創建的資料夾裡面的圖片
這時就崩潰了(整個程式都死掉)
然而只要重開在點進去啟用B Activity就可以正常看到那張新建的圖片
不太知道是什麼問題
目前試過把 A Activity 完全關掉 再點進去使用 B
結果也還是一樣 崩潰@@
不曉得有沒有版上的大大知道要下什麼關鍵字去找問題
還是知道是為什麼
使用都正常 但就是在建新的資料夾以及圖片後
第一次點進另一個Activity會直接崩潰
之後就不會了 想請問 該如何解
感謝大大們了
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.99.170
※ 文章網址: http://www.ptt.cc/bbs/AndroidDev/M.1412416006.A.0DD.html
→
10/04 18:06, , 1F
10/04 18:06, 1F
有 讀取 寫入都有
一開始以為是這個問題 後來還是一樣
※ 編輯: garychangb (39.9.152.42), 10/04/2014 18:39:58
→
10/04 18:42, , 2F
10/04 18:42, 2F
應用程式終止 @@ 所以才令人苦惱
※ 編輯: garychangb (220.143.197.16), 10/04/2014 19:31:34
推
10/04 19:37, , 3F
10/04 19:37, 3F
→
10/04 20:00, , 4F
10/04 20:00, 4F
https://www.dropbox.com/s/yd9frlynpc0ixlj/log.txt?dl=0
這是我設中斷點
(切換Activity後 startActivity(intent);)
直接崩潰 後面的LOG 都不懂@@
而且也不知道LOG有沒有
拍謝拍謝 小弟比較笨
※ 編輯: garychangb (220.143.197.16), 10/04/2014 20:25:20
是 Caused by: java.lang.NullPointerException ???
※ 編輯: garychangb (220.143.197.16), 10/04/2014 20:29:08
→
10/04 20:37, , 5F
10/04 20:37, 5F
→
10/04 20:37, , 6F
10/04 20:37, 6F
→
10/04 20:41, , 7F
10/04 20:41, 7F
→
10/04 20:41, , 8F
10/04 20:41, 8F
RESIZE那邊好像問題 所以是NullPointerException@@
有NEW
c大 什麼意思不太懂 他正常是執行另一個activity後會出現xml的
還是你的意思是寫log在新的那個的xml裡?
※ 編輯: garychangb (220.143.197.16), 10/04/2014 20:50:06
※ 編輯: garychangb (220.143.197.16), 10/04/2014 20:53:22
→
10/04 21:03, , 9F
10/04 21:03, 9F
→
10/04 21:04, , 10F
10/04 21:04, 10F
public Bitmap reSize(){
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
int rand= (int)(Math.random()* DickActivity.favfiles.length+1);
Bitmap bitMap =
BitmapFactory.decodeFile("/sdcard/MindWave/Interest/"+rand+".jpg",options);
int width = bitMap.getWidth();
int height = bitMap.getHeight();
// 設置想要的大小
int newWidth = 1320;
int newHeight = 1320;
// 計算縮放比例
float scaleWidth = ((float) newWidth) / width;
float scaleHeight = ((float) newHeight) / height;
// 取得想要縮放的matrix參數
Matrix matrix = new Matrix();
matrix.postScale(scaleWidth, scaleHeight);
// 得到新的圖片
return bitMap = Bitmap.createBitmap(bitMap, 0, 0, width, height,
matrix,true);
}
※ 編輯: garychangb (220.143.197.16), 10/04/2014 21:14:46
推
10/04 21:57, , 11F
10/04 21:57, 11F
→
10/04 21:58, , 12F
10/04 21:58, 12F
→
10/04 21:58, , 13F
10/04 21:58, 13F
→
10/04 22:04, , 14F
10/04 22:04, 14F
→
10/04 22:05, , 15F
10/04 22:05, 15F
→
10/04 22:06, , 16F
10/04 22:06, 16F
→
10/04 22:11, , 17F
10/04 22:11, 17F
→
10/04 22:25, , 18F
10/04 22:25, 18F
→
10/04 22:25, , 19F
10/04 22:25, 19F
→
10/04 22:37, , 20F
10/04 22:37, 20F
→
10/04 22:39, , 21F
10/04 22:39, 21F
→
10/04 22:39, , 22F
10/04 22:39, 22F
→
10/04 22:39, , 23F
10/04 22:39, 23F
現在奇怪的就是為什麼第一次會崩潰
而關掉重開卻可以正常的執行
(有讀到我要的照片)
※ 編輯: garychangb (220.143.197.16), 10/04/2014 22:50:24
現在嚴重懷疑是東西沒有存完全
因為現在A執行完後 直接關掉程式
然後再打開 直接執行B 就可以了
還是一直寫
Caused by: java.lang.NullPointerException
所以懷疑可能是檔案沒有存完
但是我有把A關掉@@
不解~@@
※ 編輯: garychangb (220.143.197.16), 10/04/2014 23:18:20
→
10/05 10:07, , 24F
10/05 10:07, 24F
推
10/05 11:19, , 25F
10/05 11:19, 25F
→
10/05 11:19, , 26F
10/05 11:19, 26F
有flush 也有close
是static耶 那個是從 DickActivity傳過來的static歐 我改改看 說不定是關掉反而傳不
過來
※ 編輯: garychangb (27.246.30.83), 10/06/2014 00:29:03
→
10/06 20:42, , 27F
10/06 20:42, 27F
→
10/06 20:42, , 28F
10/06 20:42, 28F