資訊科技

Android 儲存資料 (七) - 總結說明 - 封面圖

Android 儲存資料 (七) - 總結說明

前幾篇文章介紹了在 Android 開發中,使用的各種資料儲存方式,包含:Resource Files、Internal Storage、External Storage、SharedPreferences、SQLite 及 Room。這篇是本系列的最後一篇文章,總結每一種儲存方式的主要特色,幫助大家在開發 APP 時,挑選適合的方式來實作。
Android 儲存資料 (六) - 使用 Room - 封面圖

Android 儲存資料 (六) - 使用 Room

Room 持續性資料庫為 SQLite 提供抽象層,可讓資料庫更順暢的存取,同時充分發揮 SQLite 的效用,由於 SQLite API 存在一些缺點,因此 Google 強烈建議使用 Room 來存取 SQLite 資料庫中的資料。SQLite API 無法在編譯時檢查 SQL 錯誤,必需等到執行時才顯示錯誤訊息,且需要使用大量樣板程式碼,才能將資料庫資料轉為資料物件,而 Room 解決了這些問題。
Android 儲存資料 (五) - 使用 SQLite - 封面圖

Android 儲存資料 (五) - 使用 SQLite

SQLite 是一種輕量化的關聯式資料庫,適合用來儲存複雜且重複的結構化資料,如果您熟悉 SQL 資料庫,那麼使用 SQLite 必定能駕輕就熟,使用上大同小異。目前 Android 已經內建 SQLite ,無需安裝任何套件,也無需任何權限就能使用,且每個 APP 的 SQLite 各自獨立無法互相存取,當 APP 解除安裝後,資料也會一併刪除。雖然大部分 APP 的資料都是透過 API 取得,感覺好像不需要在手機裡面放一個資料庫。但這還是要看您的 APP 功能需求,如果需要在沒有網路的狀況下也能使用的話,那就有很大機會使用到 SQLite。又或者有大量不太會異動的資料,這樣也能用 SQLite 當作快取使用,可減少頻繁的與伺服器連線。
Android 儲存資料 (四) - 使用 SharedPreferences - 封面圖

Android 儲存資料 (四) - 使用 SharedPreferences

SharedPreferences 是一種輕量化的資料儲存方式,每個 APP 的 SharedPreferences 資料都是各自獨立無法互相存取,當 APP 解除安裝後,資料也會一併刪除。適合用來儲存簡單輕量的 Key-Value 資料,例如使用者帳號、暱稱、登入時間...等等,複雜格式則建議使用 JSON 檔案或 SQLite 資料庫儲存。SharedPreferences 支援 Boolean、Float、Int、Long 及 String 等型別,且無需任何權限就可以存取。
Android 儲存資料 (三) - 使用 External Storage - 封面圖

Android 儲存資料 (三) - 使用 External Storage

External Storage 中的檔案能與其他 APP 共享資源,也可以使用手機內建的檔案管理 APP 來瀏覽這些檔案。傳統的 External Storage 通常代表 SD 卡,但實際上 External Storage 區分 Primary External Storage 及 Secondary External Storage 兩種類型,每個類型還區分 APP 專屬目錄及共享目錄。這幾種類型主要差異只有目錄取得的方式,後續的各項操作都大同小異。由於 External Storage 儲存設備可能被使用者移除,因此比較適合用來儲存 APP 執行時非必要的檔案,就是被刪除也不影響 APP 執行的檔案。在使用檔案前,也建議應該先檢查設備是否可讀可寫。
Android 儲存資料 (二) - 使用 Internal Storage - 封面圖

Android 儲存資料 (二) - 使用 Internal Storage

在 Android 安裝 APP 後,系統會自動在手機內部規劃一個專屬的目錄 (app-specific) 來儲存 APP 資料,這個目錄就是 Internal Storage,儲存在這個目錄之外的就稱為 External Storage。Internal Storage 只有安裝的 APP 可以存取,無法與其他 APP 共享資料,也無法使用手機內建的檔案管理 APP 瀏覽檔案,如果 APP 是您開發的話,可以使用 Android Studio 內建的 Device File Explorer 工具來瀏覽檔案。當 APP 解除安裝後,資料也會一併刪除,而在 Android 10 (API 29) 及以上版本中,這些位置會進行加密處理,進一步提升資料安全性。適合用來儲存 APP 執行時會用到的必要檔案,或較機密的資料。
Android 儲存資料 (一) - 使用 Resource Files - 封面圖

Android 儲存資料 (一) - 使用 Resource Files

在 Android 開發上,或多或少都會使用到圖檔、動畫檔、佈局檔......等靜態資源,這些資源稱為 Resource Files。涉及儲存這些靜態資源的目錄有 res 及 assets 兩個目錄,其中又以 res 目錄最常使用,res 目錄具有嚴格的子目錄結構定義,每個子目錄都有其用途,這表示您不能隨便在 res 目錄底下建立自己想要的目錄結構。在少數狀況下,如果您真的需要存取原始資源或自訂目錄結構,那麼您就必需將檔案改存放到 assets 目錄中,但必須再次強調,這是非常少見的狀況。
網頁圖片延遲載入方法 (Lazy loading) - 封面圖

網頁圖片延遲載入方法 (Lazy loading)

網頁載入時耗費最多流量的資源,大概就是圖片了。為了節省流量的浪費,除了將圖片在可接受畫質的狀況下,盡可能的將檔案大小縮小之外,另一個實用技巧就是圖片延遲載入 (Lazy loading)。我認為延遲載入最明顯的好處有節省流量、降低使用者因等待而跳出及提升 SEO 成效。
Google Search Console 安裝設定教學 - 封面圖

Google Search Console 安裝設定教學

Google Search Console (GSC) 可以用來評估您網站的搜尋流量及索引狀況,是一個完全免費的工具,當您的網站經營一段時間後,開始規劃並操作SEO時,這幾乎是您一定要用的必備工具,本文會一步一步說明安裝設定的流程,以及如何驗證網站擁有權與提交 Sitemap。
淺談搜尋引擎最佳化 (SEO) 如何操作?適用初學者 - 封面圖

淺談搜尋引擎最佳化 (SEO) 如何操作?適用初學者

搜尋引擎最佳化 (Search Engine Optimization, SEO) 是指根據搜尋引擎的運作規則來調整網站的架構及內容,進而提升網站在搜尋引擎上的排名及提升網站流量。一個 SEO 友善的網站,可以讓搜尋引擎將網站排名在較前面,進而導入更多的自然流量,在經營電商網站時,為了提升銷售業績,SEO 幾乎是一定會進行操作的行銷活動。本文會介紹 SEO 的操作流程、操作方法及常見的操作工具,讓您綜觀了解 SEO 操作過程中,到底需要進行哪些工作,是一篇適合初學者的教學文章。如果看完本文之後,您想進一步學習進階知識,在本文最下方,也提供合適的學習資源。