AndroidのSQLite DBを参照

Androidアプリ開発でデバッグを楽にするため、SQLiteのDBを参照する方法について調べました。

2 minute read

 更新日:2017年05月16日 0.環境 PC側 [OS] Windows7 (32bit 版) [Android Studio] 1.5.1 スマホ側 [OS] Android 5.1.1 [SQLite] 3.8.6.1 1. 前提 まずSQLiteのデータをファイル形式で保存するよう設定します。 例として、SQLiteを操作するライブラリにSQLiteOpenHelperを使用した場合について記載します。 コンストラクタの第二引数でDBファイル名を指定します。 (未指定の場合、データはメモリにのみ保持されます) class DatabaseHelper extends SQLiteOpenHelper { public DatabaseHelper(Context context) { //DBファイル名を指定。 super(context, "example.db", null, 1); } PCからAndroid端末にあるSQLiteのDBファイルを見る方法を調べました。 試行錯誤した内容を書いているため、結論だけ知りたい場合は、4まで読み飛ばして下さい。 2. ADB(Androidデバッグ用インターフェース) 利用 ネットを検索して結構あったのが、ADBを使ってSQLiteのDBファイルをAndroid端末からPCへコピーし、その後DBビューワーで参照するというものです。 PCでコマンドプロンプトから下記コマンドを実行すると、カレントディレクトリにtarget.db(任意)というファイルができます。 C:\Users\【ユーザー名】>adb -d shell "run-as 【アプリケーションID】 cat databases/【DBファイル名】">target.db 【】内は読み替えて下さい。 【アプリケーションID】: Android Studioの[File]-[Project Structure]-[Flavors]-[Application Id]

1 minute read

  1. 前提 環境などの前提条件は前回の1から3と同じです。 今回は教科書の[1. Reduce number of HTTP requests]-[Use Browser Cache]をやってみました。 修正が少ない静的ファイルはブラウザキャッシュの期間を延ばし、2回目以降のアクセスはキャッシュから読み込むことで速度向上につなげます。 作業は下記の2点です。 (1) キャッシュ期間延長  Webサーバーの設定でjs、cssのブラウザ・キャッシュ期間を延ばします。 (2) ファイル名のユニーク化  上記1によって修正がすぐに反映されないという状況を避けるため、ファイル名に修正ごとのハッシュ値を付けてキャッシュが効かないようにします。(gulpの機能を利用)
    1. キャッシュ期間延長 nginxの設定ファイルにjs、cssの設定とキャッシュ期間を追記しました。 記述が冗長なのは追って別の書き方を調べたいと思います。 server { listen 443 ssl; server_name [ドメイン名]; ssl_certificate [ファイルパス]; ssl_certificate_key [ファイルパス]; location / { proxy_pass http://[ホスト名]:[ポート番号]; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Forwarded-Port 443; proxy_set_header Host $host; } # — css/jsの指定を追加。 — location ~* .(css|js)$ { proxy_pass http://[ホスト名]:[ポート番号]; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Forwarded-Port 443; proxy_set_header Host $host; # キャッシュ期間を設定。 expires 365d; } # — css/jsの指定を追加。 — } ChromeのDeveloper Toolsで見て、Expiresヘッダーの追加とjs、cssがキャッシュから読み込まれていることを確認します。(下図オレンジの枠線)

Hugoクイックスタート

Hugoクイックスタート

1 minute read

  1. 環境 [Mac] 10.11.6 [Hugo] 0.19 1.インストール ここ数年、ブログウェアはjekyllを使ってましたが、下記の点が不便だったので、評判の良いHugoを試してみました。まずはサンプルを動かすところまで。 初期構築やバージョンアップが大変だったので、他のPCに環境を作る気になれない。(今ならDockerという手もありますが…) 記事の生成に時間がかかるようになってきた。 記事の更新後、2~3回リロードしないとブラウザに反映されない。 インストール・マニュアルに従って進めました。 僕の場合、Homebrewは既に入っていたのでStep2からやりました。 $ brew update $ brew install hugo 「インストール後にバージョンを調べてね」と書いてあるので念のためチェックです。 $ ls -l $( which hugo ) lrwxr-xr-x 1 mx admin 28 3 19 03:08 /usr/local/bin/hugo -> ../Cellar/hugo/0.19/bin/hugo $ hugo version Hugo Static Site Generator v0.19 darwin/amd64 BuildDate: 2017-02-27T19:21:29+09:00 2行とも0.19なので問題なさそうです。 2.サンプル作成 こちらのページに沿ってサンプルを作成しました。 適当なディレクトリで下記を実行します。(僕の場合 /app/hugo-test/ なので読み替えて下さい)