Daily Archives

3 Articles

Android

Android App Bundle (Androidアプリバンドル) -aabからapkを作成してサイズ削減量をチェックしてみる

Posted by dowell on

mobile-ffmpegを組み込んだAndroidアプリをリリースしたけどサイズが大きい。。
full-gplからminにするだけで20MB以上は削減できるけど
それでもAPKファイルは35MB近くある。。

Android App Bundleでリソースファイルだけでも小さくできないか試してみました。

アプリバンドルの作成

Android StudioのビルドからAPKではなく、バンドルを選んで出力するだけ。

アプリバンドルから端末向けのAPK生成

bundletoolをダウンロード

https://github.com/google/bundletool
Bundletool is a tool to manipulate Android App Bundles.
The Android App Bundle is a new format for publishing Android apps in app distribution stores such as Google Play.

”–connected-device”でadbで接続中の端末に向けたApkができるらしい。


 java -jar bundletool-all-0.9.0.jar build-apks \
 --bundle=/ path to /app.aab \
 --output=/ path to /myapp.apks \
 --ks=~/.android/debug.keystore \
 --ks-pass=pass:android \
 --ks-key-alias=androiddebugkey \
 --key-pass=pass:android \
 --connected-device

自分の環境では35MB->30MBだったので効果はあった。

既存のAPK配信アプリをバンドルへ移行

upload_cerとdeployment_certは表示されてるので、ローカルのkeystoreとPEPKで紐づけるのか
PEPKツール(Play Encrypt Private Key)が必要らしいけどダウンロードボタンどこ?。。
あとでにします。

Linux

jad(Linux on Intel platform)でNo such file or directoryが出たのでstatically linkedにしたら動いた

Posted by dowell on

https://varaneckas.com/jad/

ubuntuの環境でわかりにくかったエラー
ソースを無くしたので、Classファイルをjavaファイルに戻そうと
jadを実行しようとしたら、”jad: No such file or directory”??


root@doroidpanic-ubuntu:/opt/Jad1.5.8e/jad# jad
-bash: /opt/Jad1.5.8e/jad: No such file or directory
root@doroidpanic-ubuntu:/opt/Jad1.5.8e/#
root@doroidpanic-ubuntu:/opt/Jad1.5.8e/# ls -la
-rwxrwxr-x 1 root root 961596 Aug  6  2001 jad

ダウンロードしたのは
「Jad 1.5.8e for Linux on Intel platform (214917 bytes)」でLinux向けは
「Jad 1.5.8e for Linux (statically linked) (389972 bytes)」もあるけど

take this version if the one above crashes or displays the “seek error” message.

とあるので、.soがないとか言ってなからどうなんだろうと思いながら
(statically linked)に変更したら、動いた。。。


root@doroidpanic-ubuntu:/opt/Jad1.5.8e/jad# jad
Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov (kpdus@yahoo.com).
Usage:    jad [option(s)] 
Options: -a       - generate JVM instructions as comments (annotate)
         -af      - output fully qualified names when annotating
         -b       - generate redundant braces (braces)
         -clear   - clear all prefixes, including the default ones

ちなみにVPSはintelだったのでいいと思ったんだけどな。。


root@doroidpanic-ubuntu:$cat /proc/cpuinfo
vendor_id	: GenuineIntel
cpu family	: 6
model		: 62
model name	: Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz