IPHONE7 相機膠捲排序亂掉 - iOS

Leila avatar
By Leila
at 2016-10-01T12:53

Table of Contents

不好意思,我再來佔一下版面
我不死心繼續研究了到底是什麼東西在作怪,

最後發現成功把順序修正了!!! 簡單來說是整個流程手機不要進入鎖定模式

參考 https://www.reddit.com/r/jailbreak/comments/3v2zjs
步驟修正為:
1. 關閉相機、照片APP,手機保持螢幕開啟、不要進入待機、鎖定模式
2. 透過iTools把手機內的Photos.sqlite拿出來,
3. 透過SqliteBrowser(DB Browser for sqlite)更新Photos.sqlite的資料庫
4. 將剛剛修改好的Photos.sqlite丟回手機
5. 開啟照片app,他不會自動重整資料庫,順序馬達上就是對的了!

整個步驟的流程其實不到一分鐘即可完成(如果iTools與SqliteBrowser已有)
一般使用者可END


接下來詳述運作原理與之前的失敗原因,有誤請不吝指正:
1. 排序機制
透過查看Photos.sqlite的GenericAsset表格中,詳列了每張照片的
索引 Z_PK
加入時間 ZADDEDDATE (應該是相片加入資料庫的時間)
創造時間 ZDATECREATE (拍攝照片的時間)
修改時間 ZMODIFICATIONDATE
存放資料夾 ZDIRECTORY
檔案名稱 ZFILENAME

透過觀察ZADDEDDATE與ZDATECREATE的數值、排序,以及索引值與檔案名稱的變化,
可以發現相機膠卷(Camera Roll)的相片順序與ZADDEDDATE的排序相同

理想上,AddedDate會是你拍攝、相片加入相機膠卷的那一刻,
但由於一些同步的機制,在備份還原後(或資料庫重建)的手機上,
AddedDate會跑到還原、或重建資料庫的那個時間點附近,
但DateCreate仍然是你拍攝的時間無誤

由於iOS資料庫重建、歸檔機制不明,
所以我們目前看到的現象是AddedDate與實際DateCreate的順序對不上的問題,
這個實在無解,這要設計者才能解釋,

所以我們一般使用者只能利用改寫資料庫的方式修正這個問題

2. 失敗的原因
iOS 10在相片功能中加入一個"人物"的功能,他會在手機鎖定(螢幕關閉)的狀態
掃描相片資料庫中的所有相片、並將這些人物的資訊寫入相片資料庫中

這也呼應到我上一篇發現我在操作過程中,明明相片APP都關了,
Photos.sqlite這個資料庫卻自己長大的問題
所以看起來是在背景的人物掃描功能,使得我們修改順序後的資料庫起不了作用

因此關鍵是在整個過程中手機螢幕保持開啟
另外我還在2.3.4.步驟順便把Photos.sqlite-wal一起拿掉,或許也有關係

總而言之,解決一個問題覺得舒坦⊙o⊙

--
Tags: iOS

All Comments

Victoria avatar
By Victoria
at 2016-10-02T00:20
推研究精神
Susan avatar
By Susan
at 2016-10-04T13:48
Kumar avatar
By Kumar
at 2016-10-05T05:33
所以一般使用者無法用囉?
Kristin avatar
By Kristin
at 2016-10-07T08:42
一般使用者可以使用喔
Susan avatar
By Susan
at 2016-10-08T18:17
請問第三步驟要怎麼跟新資料庫?
Bennie avatar
By Bennie
at 2016-10-10T08:01
第三步驟不懂+1
Candice avatar
By Candice
at 2016-10-14T04:43
我晚點有時間再打中文的步驟 有興趣可先參考網址的英文
說明
Ivy avatar
By Ivy
at 2016-10-14T18:22
先感謝分享了
Rae avatar
By Rae
at 2016-10-17T04:13
推研究精神
Elvira avatar
By Elvira
at 2016-10-18T13:55
成功了,感謝!我是把這三個新的檔案在copy回手機取代
Kristin avatar
By Kristin
at 2016-10-22T14:23
舊的,不然試都失敗. http://imgur.com/a/3skX7
Victoria avatar
By Victoria
at 2016-10-25T00:37
讚!所以真的要順便一起拿掉Photos.sqlite-wal與Photos.
sqlite-shm才會成功

升級ios後強制輸入密碼

Kama avatar
By Kama
at 2016-10-01T12:40
大家好,想請教大家 由於不住在家中,家裡老爸今天來電 自己更新完ios後,突然要他輸入六碼的解鎖密碼, 但我爸平常沒在用密碼的,這點我確定! 而且往右滑一些天氣資訊那些都還可以看, 就是單純多了要他輸入密碼才能開畫面這個步驟 請問有人遇過這樣的問題嗎? 已爬文及google可能關鍵字不對 都找不到答案.. ...

iPhone 6 升完iOS10的使用經驗

Olga avatar
By Olga
at 2016-10-01T12:09
※ 引述《MM79979 (90後憤青)》之銘言: : 乳題 : iPhone 6 是不是真的不適合升iOS10 : 身邊的朋友呈兩極反應 : 有的升完說變很順很好用 : 有的則是說他真的不行又降回iOS9.3.5 : 那我自己則是還沒升 : 以往每次iOS的升級我都是首批升 : 唯讀這次的iOS10讓我覺得 ...

有人遇過電話打來卻滑不開嗎?

Catherine avatar
By Catherine
at 2016-10-01T11:53
以前iPhone5遇過幾次 最近6plus也遇到 一次是電話,一次是line網路電話 手也沒濕,但就是怎麼滑都滑不開接聽 有人也遇過嗎? - ...

iphone6觸控失靈

Madame avatar
By Madame
at 2016-10-01T11:25
最近小弟的i6也中招了, 一直有亂跳、觸控沒反應的狀況, 問了一下知名的愛x修, 修一次要價5000元, 雖然知道售後服務良好,但實在修不起... 想請問各位版友是否有推薦的店家? 副廠也沒關係,反正保固早就過期了。 - ...

6S全台缺貨?以及出貨問題

Todd Johnson avatar
By Todd Johnson
at 2016-10-01T11:22
已經/ 缺貨和 /6S 出貨 過了 前幾天在台北找了各大經銷商6S都缺貨 這還滿讓人訝異的 我以為比較熱門的是7系列 板上討論也都在討論7 後來直接在官網上訂了6S PLUS 也已經出貨了 從新加坡出貨 預計10/4前到 但簡訊是說10/2或之前到 想請問通常這樣的出貨狀況會多久拿到 ...