2021年7月21日 星期三

Android kotlin 備份及還原 app 的 sqlite database

因為在 Android Q (API 29) 後有 getExternalStoragePublicDirectory is deprecated 的狀況,所以最後終於東拼西湊出可以複製。

下列程式是用在 Fragment,如果是Android Q以上,會有檔案選取頁面選擇要儲存備份的檔案位置和自訂檔名,在還原時也可以自行選擇還原檔案。其他較低的Android 則在備份時直接以指定檔名儲存到 Download 資料夾,還原時也從 Download 資料夾讀取指定檔名。

2021年7月16日 星期五

Python imaplib 讀取 gmail 內文及附件(python gmail attachment download)



想要自動化取得 gmail 的附件,再自動做其他用途。

可以用 imaplib 方式

未完成功能:message_from_string 取得的 subject 和 from 轉成 utf-8

2021年7月14日 星期三

解決 web server 連線出現 The page isn’t redirecting properly 問題

問題點就是出在 Apache 設定檔中

 <VirtualHost *:443>

....

ServerName me.afreeddns.org

....

RewriteCond %{SERVER_NAME} =me.afreeddns.org
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

</VirtualHost>

因為 ServerName 和 RewriteCond 一樣,

導致 redirect 變成迴圈,

把 RewriteCond 改成和 ServerName 不同就好,例如:

RewriteCond %{SERVER_NAME} =www.me.afreeddns.org

2021年7月11日 星期日

安裝 NextCloud docker image 及 maps app 顯示照片拍攝位置

因為 Gooogle 教育帳號縮水,要逃難了。

之前架設過 NextCloud ( 實際上是從 OwnCloud 開始後來轉成NextCloud)

但是覺得當時手動設定太麻煩了,

用 docker image 應該就方便多了。

主要想法是把 container 的 port 80 映射到 host,

並且讓 Nextcloud 的檔案資料夾和設定資料夾都對應到 Host 的實體資料夾。

弄了一個下午,卡最久的就是編譯 map app 。

現在安裝的 NextCloud 是 22 版,

比3年前用的截面好太多了,

app 也更豐富。