文件管理app端需求實現方案關鍵點記錄

2022-09-23 10:33:10 字數 617 閱讀 9976

1. 基於nsurlsession的後台**,並在任務被系統中斷後的恢復(比如app被手動kill, 這種情況下本方案採取的策略是自動恢復**)

2. 在其他app中開啟,通過uidocumentinteractioncontroller實現相應的功能;並且由於該類沒有提供乙個直接判斷的方法(必須要嘗試開啟時才可以得到是否能夠開啟),這裡的trick是通過qlpreviewcontroller的canpreviewitem方法,需要構造乙個物件。 這兩個裡面的url引數必須要通過fileurlwithpath建立,和我們通常的做法不同;若使用urlwithstring會導致crash.

3. 合理的分層結構(這很重要,我們就可以替換不同層次的實現,比如替換持久化方案,替換model層的具體實現等),選擇恰當的持久化方案,並將其和記憶體儲存相結合,以實現乙個比較好的體驗(這裡不太好展開說,跟需求相關性較大)。

4.基於時間戳的介面重新整理機制;這裡的文件樹通過單個介面一次性返回,因此我們通過時間戳的機制來優化拉資料的體驗。

5. 其他的一些異常處理,比如之前**的檔案在文件樹中被刪除後本地的展示;快取清空後的體驗;恢復**的進度等。

總的來說,若要實現乙個較好的體驗,還是有很多細節需要關注;**層次結構和持久化方案上也有很多值得推敲的地方。

需求 實現等待載入效果

需求 實現載入等待效果,比如 彈出乙個圈圈一直轉的效果。方式一 使用系統uiactivityindicatorview 1 初始化,設定其顯示位置,時間 uiactivityindicatorview mloadingview void initloadingview 2 顯示 void show ...

React井字棋改進需求實現

這篇文章並不是react教程。主流前端框架 vue,react,angular,工作這兩年用過一次ag,其它都在使用vue,只有react接觸的實在是少。今天下班之餘開啟 react官網 想輕過一遍教程,看過教程的都知道上面提供了乙個井字棋遊戲實現的教程,官網那裡也寫的超級詳細,我就不再說了,我想實...

移動端app 文件交接模版

換了工作半年多了,這半年在接手專案時,總得找上乙個人問這,問那,問的我都不好意思 於是想要是有個文件的話,就不會這麼麻煩,最起碼,在我手上的專案交給別人時,省掉這些麻煩,於是有了下面的模版 一 專案前提 2 專案型別 原生開發 web 開發 原生 web 開發 3 登陸賬號 測試 有 a 賬戶 ad...