しばらく前から、Admob にて、Google Play Services を使うようになっていたが、更新も手間なので、放置していた。
しかし、古いSDKは、2016年9月15日でサポート終了とのメールが来ている。
というわけで、更新!
エクリプスで作成していたアプリだが、さすがにAndroidStudio を導入。
インポートすると、エラーは出たが、メッセージをみて、インストールとかしてれば、あっさり完了。
※一応、書き換えが必要なものもあった。参考
http://qiita.com/shoma2da/items/1e84807809e7d1f4803b
ビルドできたので、リリースAPKを作ろうとしたところ、エラー。
Error:The number of method references in a .dex file cannot exceed 64K.
どうも dex ファイルを64K以下にしろ、みたいな。
そんなん言われても、導入したの Google Play Services だけだし…。
サポート終了を知らせるメールには、
compile 'com.google.android.gms:play-services:9.0.2'
と記述せよと書いてある。
https://developers.google.com/android/guides/setup
を見てみると、やはり
compile 'com.google.android.gms:play-services:9.4.0'
という書き方をしている。
が、どうもこれがマズイっぽい。
以下を参考に
http://qiita.com/niusounds/items/f9a0ab3cbe07878ed8f6
compile 'com.google.android.gms:play-services-ads:9.4.0'
と書いてみた(赤字が追加部分)ところ、すんなり通った!
そんなわけで、1年以上ぶりのアプリ更新、こちらのブログも更新となりました。
2016年8月6日土曜日
2015年8月18日火曜日
PHPでの「->」の意味
PHPの「->」の意味が分からなかったが、下記ページで理解できた。
参照URL
http://www.phppro.jp/qa/536
http://tdak.hateblo.jp/entry/20140406/1396773476
つまり、javaでいう「.」のこと。
Hogeクラスがあったとして、
Hoge hoge = new Hoge();
hoge.Hogeクラスの変数やメソッド
みたいに呼び出すのと同じ。
参照URL
http://www.phppro.jp/qa/536
http://tdak.hateblo.jp/entry/20140406/1396773476
つまり、javaでいう「.」のこと。
Hogeクラスがあったとして、
Hoge hoge = new Hoge();
hoge.Hogeクラスの変数やメソッド
みたいに呼び出すのと同じ。
2015年8月7日金曜日
Android の apk ファイルの解析
・MAC
1. ~.apk のファイルの拡張子を .zip に変更し解凍する。
2. classes.dex ファイルを jar ファイルに変換する。
dex2jar というツールを使用する。
※詳細は以下のページを参照しました。
http://qiita.com/le_skamba/items/04c0a0cfe420be862122#%E3%82%B9%E3%83%86%E3%83%83%E3%83%973-dex--jar
http://sourceforge.net/projects/dex2jar/
ポイントとしては、実行権限をつけてあげる。
(該当のフォルダまで cd で移動して、chmod +x *)
Mac だと、拡張子 .sh のファイルを使う。
(d2j-dex2jar.sh classes.dex)
3. jar ファイルの拡張子を .zip に変更し解凍する。
4. ~.class ファイルを java ファイルに変換する。
使用するツールは、上記サイトを参考に、JavaDecompiler を使う。
http://jd.benow.ca/
JD-GUI
にてMAC なら jd-gui-osx-1.4.0.tar をダウンロード。
実行して、class ファイル選択すると、まとめて表示される。
・最近は、
androguard を使うのが、良いらしい。
https://code.google.com/p/androguard/wiki/Installation
が、導入方法がさっぱり分からん。
1. ~.apk のファイルの拡張子を .zip に変更し解凍する。
2. classes.dex ファイルを jar ファイルに変換する。
dex2jar というツールを使用する。
※詳細は以下のページを参照しました。
http://qiita.com/le_skamba/items/04c0a0cfe420be862122#%E3%82%B9%E3%83%86%E3%83%83%E3%83%973-dex--jar
http://sourceforge.net/projects/dex2jar/
ポイントとしては、実行権限をつけてあげる。
(該当のフォルダまで cd で移動して、chmod +x *)
Mac だと、拡張子 .sh のファイルを使う。
(d2j-dex2jar.sh classes.dex)
3. jar ファイルの拡張子を .zip に変更し解凍する。
4. ~.class ファイルを java ファイルに変換する。
使用するツールは、上記サイトを参考に、JavaDecompiler を使う。
http://jd.benow.ca/
JD-GUI
にてMAC なら jd-gui-osx-1.4.0.tar をダウンロード。
実行して、class ファイル選択すると、まとめて表示される。
・最近は、
androguard を使うのが、良いらしい。
https://code.google.com/p/androguard/wiki/Installation
が、導入方法がさっぱり分からん。
登録:
投稿 (Atom)