Smaller APKs : Android におけるAPKを小さく保つためのテクニック
Android Performance Patterns Session にいい動画が上がっていたので、備忘録として中身を書き出しておく
Removing Unused Resources Multi Resources Support Vector Drawables Reuse Existing Resources Removing Unused Code Apk Analyzer Removing Unused Resources gradle file にて以下の minifyEnabled と shrinkResources をセットしておく。
android { … buildTypes { release { minifyEnabled true shrinkResources true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } これらはアプリ内で使用していないリソースを除去してくれます。
Multi Resources Support Android がサポートしているリソースサイズを全て揃えるとそれだけで結構な量になるので、必要なものだけ使う。
ldpi
mdpi から自動で作られる
mdpi
tvdpi
使わない
hdpi
xxhdpi から自動で作られる
xhdpi
xxhdpi から自動で作られる
xxhdpi
xxxhdpi
mdpi xxhdpi xxxhdpi のみ使用する
Laravel :: phpunit with clean database.
Laravel + postgresSQLを使ったサイトで unit test を書いてたが、既存のデータベースを使うと、テストが意図しない挙動になることがあったので、汚れていないDBを使いたくなったので、調べてやってみたら、意外と詰まってしまったという話。 環境 sqlite in memory database を使う方法 config/database.php config/database.php phpunit.xml TestCase.php Sqliteでエラーがでる場合の対処1 Driver not found ALTER TABLE SYNTAX ERROR Sqliteでエラーがでる場合の対処2 環境 laravel 5.x PostgreSQL sqlite in memory database を使う方法 config/database.php 環境変数で default 値を差し替えれるようにする 'default' => env('DB_DEFAULT', 'pgsql'), config/database.php memory database の定義を作る 'sqlite_testing' => [ 'driver' => 'sqlite', 'database' => ':memory:', 'prefix' => '', ], phpunit.xml 環境変数追加。環境変数を与える方法は別に何でも良い。
public function setUp() { parent::setUp(); $this->artisan('migrate'); $this->artisan('db:seed'); } public function tearDown() { $this->artisan('migrate:reset'); } これで上手くいく人は上手くいく。