週末まで待てなくてやっちゃった☆
ということで私のSHV32がAndroid 6.0になりました。
文鳥可愛い。まどマギ好き。SEやってます。
週末まで待てなくてやっちゃった☆
ということで私のSHV32がAndroid 6.0になりました。
au、「AQUOS SERIE SHV32」をAndroid 6.0に - ケータイ Watch
発表が3/4なので、約5ヶ月。結構待った。
まあ、結果としてはIngressのAegis Nova Tokyo(7/16)より後でよかったけど。慣れない端末環境でアノマリー戦うの厳しいし。
もちろん嬉しいし、すぐにアップデートするつもりだけど、いくつか気になる点があるので、個人的感想と、対策についてメモ。
珍しく仕事ネタ。
詳細は省くけど、Android Studioでアプリをビルド(gradle)したら8分とかかかって遅すぎ(速い時でも1分以上)。
メモリもjava.exeとstudio.exeで各1Gぐらい消費してる。おかげで他のアプリも重い。激重。
ぐぐってみたけど「JVMのmaxを増やせ」みたいな記述しかなくて、PCのメモリが4Gしかないし増設できないんだよー!!って心の叫びを抑えて我慢してたけど、全く別方面のアプローチから解決したので書いておく。
PCでAndroidのアプリをマルチタスクで使えるエミュレーター「BlueStacks 2」を使ってみました - GIGAZINE
インストールしようとしたら、古いroot済みのBlueStacksに上書きしてしまい、動きがおかしくなったので一旦アンインストールして入れ直し。
とりあえずホームにADWを設定して、adb shellから
am start -a android.settings.DEVICE_INFO_SETTINGS
を実行してデベロッパーモードONにして(もしかして不要だったかも?)
am start -a android.settings.APPLICATION_DEVELOPMENT_SETTINGS
を実行してデバッグ表示ONにしてみた。
root化は最新版に対応したのがまだでてない?もしかしたら現状は不可能なのかも。
でも、最近は正直root化ってあまり必要な気がしないので別にいらないかな...。
つい先日、SHV32のアップデートを適用しようとしたときに接続トラブルがあって、改めてSHV32のIPv6回りを調べてみた。
すると、新たに奇妙な現象が発生。
今まで分かってる現象と合わせて書くと
てっきりv6での通信が一切出来てないものだと思ってた。
前回(Androidにpush通知する(Chrome ServiceWorkers+Google Cloud Messaging): 約定期blog GS)で、push通知が送れるようになったけど、その後いくつかトラブルがあったのでメモ。
・登録できない?
実験に使ったURLは公開してないけど、不正に使われたら困るので一旦BASIC認証をかけたら、通知購読できなくなった。
原因は、manifest.jsonが401エラーになってたこと。
どうやらブラウザでログインしてても、manifest.jsonには適用されないみたい。
・Wi-Fi環境で通知されない
5G(IEEE802.11a/ac)だと特に問題が起きやすい?
これは以前からあるし、他のアプリでもそうなのでもう諦めるしかないかも…。
通知だけじゃなくて、PCからのアプリインストールでもそうなるし。
軽い気持ちで試したらいろいろと泥沼ってへとへと。
とりあえず、サーバ側のアクションだけでAndroidスマホにpush通知を送れたので一旦終了…。
・メモ
参考にしたサイト
WebアプリからもPush通知が!ChromeのPush通知について - しろかい!
http://shirokai.hatenablog.com/entry/chrome-push-notification
ChromeでW3C Push APIを使ってみた - Qiita
http://qiita.com/tomoyukilabs/items/8fffb4280c1914b6aa3d
ServiceWorkerを使ったPush APIをやってみた - kinjouj.github.io
http://kinjouj.github.io/2015/05/serviceworker-push-api.html
fix demo after subscriptionId goes away by notwaldorf ・ Pull Request #40 ・ PolymerElements/platinum-push-messaging ・ GitHub
https://github.com/PolymerElements/platinum-push-messaging/pull/40/files
まだ確定事項じゃないけど、とりあえず。
データお預かりアプリを起動すると、毎回かならず「まだお預かりしていないデータがあります!」状態。
詳細を見ると、全部画像。
でも、預けようとすると一部(または全部)失敗してしまい、その失敗分に関しては何度やってもダメ。
アプリ固有データとかサムネイルとか、特殊な画像形式で失敗してるのかと思ったけど、そうではなさそう。
結論を言うと、結局何だったのかははっきり確定してない。
ただ、私のSHV32だと、内部ストレージのDCIM/.thumbnailsとDownloads内の画像を全部削除(またはPC・クラウドストレージに移動)したら、謎の預けられない画像がなくなった。
(まずDownloads内を移動したら27枚が12枚に、サムネイルを消したら0枚になった)
Downloadsの方はよくわからないけど、サムネイルのほうは「特殊な形式」か「サムネイルはあるけど画像がない」だと思う。
ちなみに写真の保存場所は初期設定の内部ストレージからmicroSDに変更済み。それも影響してるのかな?
SHV32(AQUOS SERIE)固有の問題かどうかは分からないけど、機種変更してから一部のアプリが変な挙動(Wi-Fiだと接続エラーなのに4Gだと繋がる)を見せてた原因が、どうもIPv6だと判明。
具体的にアプリ名を挙げると「IPST」「ConnectBot」「Google Chrome」等。
IPSTの場合、Wi-Fi環境だと「Gmailからの応答が空っぽだった」というエラー。
ChromeはIPv6オンリーのホスト(ipv6.google.com等)に接続しようとすると接続エラー。IPv4/IPv6両対応のホストだとv4のほうにフォールバック成功。
ConnectBotは、IPv4/IPv6両対応のホストにSSHする際、端末にIPv6アドレスが振られてるとIPv6で接続しようとするらしくエラー。これで今回の問題が判明。もちろんPCからはIPv6側にも接続できる(サーバ側で蹴っていない)のを確認。
ConnectBotのエラー、Operation not permittedって出てたから、v6のソケットが作れないのかも。
じゃあv6使わないでよ…って思うけど、アプリのほうは別にSHV32/Android 5.0専用って訳じゃないから無理だよね。自ホストにv6割り振られてたら使ってしまうだろうし。
まだまだIPv6への完全移行は遠そう。