Android4系引っかかった系メモ(Android4.1/4.2系)
内容分割)
#JB42 そういえばTimerTaskを使っていた処理でview.clearAnimationするコードが落ちるようになってた。対処的には @sakura_bird1 さんのブログの runOnUiThread記述で対処できる URL
4.1にした GalaxyNexsusでは落ちなくて、N7だけ落ちる感じ。新機能だけ注目されがちだけど既存コードが動かなくなるのは厳しいかな><。まあパズドラも4.2のN7ではエラーでて立ち上がらないし
@kimukou2628 API リファレンスと違う値が返ってくるようになったり URL
2012-11-17 09:06:44 via twicca to @kimukou2628
@dmp あー><。情報有り難うございます。TelephonyManager は READ_PHONE_STATE必要だから早急に外してるんで、使ってない関数の挙動はだいぶ変わってそうですよね(汗。
2012-11-17 09:18:51 via YoruFukurou to @dmp
あとは 4.0 =>4.1、4.2にした時点でめちゃくちゃレイアウトが崩れたアプリがあって、それの解析も凄い悩ましいかなと。正直なに起きてるかわからないよ な感覚もありつつ
@kimukou2628 twicca の例がありますね
2012-11-17 09:06:07 via twicca to @kimukou2628
@dmp そうなんですね(汗。問題のはFrameLayout or LinerLayoutを多重重ねて & anim効果 & View.VISIBLE <=>View.INVISIBLE なアプリ。他アプリでv.clearAnimation後にView.GONE等すると治った例も
2012-11-17 09:14:49 via YoruFukurou to @dmp
@dmp まだ対象のプロジェクトで状況確認できていないので、そこからですね(汗。過去互換も残しつつだから結構面倒です><
2012-11-17 09:15:50 via YoruFukurou to @dmp
4.2にしてからN7調子悪すぎ。もっさりだしスリープ復帰しないし戻したい。
@inara 同じく。パズドラも遊べなくて悲しいです(T_T)
2012-11-19 19:55:06 via hamoooooon to @inara
@kimukou_26 おお、自分だけじゃなかったんですね。なんか4.1よりワンテンポもっさりするんですよねー。(T-T)
2012-11-19 20:06:55 via twicca to @kimukou_26
@inara sleep復帰は自分も困ってます(sleep復帰して継続するアプリ作ってて、なんかsingletaskなのにonCreate走るとか。あとマルチアカウント動かすと更に動作が微妙に
2012-11-19 20:21:16 via hamoooooon to @inara
@kimukou_26 復帰周りのコードに変更あったんですかねー。マルチアカウント周りは何だかすんなりいかなそうですよね( ̄▽ ̄;)まだ情報も少なそうですし…。
2012-11-19 20:52:38 via twicca to @kimukou_26
@inara どうもメモリ空間が中途半端に共有&分断されてるっぽい動きで、バッティング強引に初期化してるか、保存されるべき情報が保存されてないか のどちらかかも。暫く様子見ですね(´▽`;)ゞ
2012-11-19 21:15:19 via hamoooooon to @inara
@kimukou_26 なるほどー。その辺りはきっとまだまだ手探り状態なんですかね。次のアップデートに期待しますかヽ(´ー`)ノ
#JB42 Nexus 7でみてると 上から=>下へ 変なグラデーションかかっててすごい迷惑。これ android:background="@null" の指定しまくれば消えるのかな??
#JB42 とりあえずChild要素のLinerも含めてすべて android:background="@null" 指定したらグラデーションの変な色相が 単一グラデーションになった。こういう見た目に目立つ変更はやめて欲しい(汗
Please execute 'adb uninstall XXX' って Android4系で アンインスした場合でも転送エラーの原因わかった。。これプロセス停止してからアンインストールしないとインストールできなくなってる。これAndroid4.2(N7)のバグなんかな(汗
N7をカミさんとマルチユーザーで使ってるんだが、相手のアカウント側のサービス死なないのかな?なんかもっさりすることが多い
@osa030 ですです。マルチ垢にしてからなんか充電がなかなか進みませんね。Googleplayサービスは少なくとも複数動いてそう
2013-01-15 23:16:14 via hamoooooon to @osa030
@kimukou2628 まぁユーザごとにインスタンスは別なんでしょうけどねぇ…。今後の改善を期待したいですな
2013-01-15 23:17:42 via twicca to @kimukou2628
@osa030 どうもN7起動した時点でマルチ垢分動いてる感じがします(電池の減りも早い。前はそんなことなかったので改悪されてるような感じがしてしまいますね
2013-01-15 23:21:56 via hamoooooon to @osa030
[http://twitter.com/kimukou2628/status/291226610475102210:twitter:tree]
4.1 WebView問題‥‥‥)
Fatal signal 11 (SIGSEGV) at 0x00000008 (code=1) が 4.1 GALAXY NEXUSで起きてて困ってる。 URL 話っぽいけどこれだとAdに使ってるWebViewに起因してしまうよな。。。(汗
ちなみに 4.2のNEXUS7では起きないので、4.1のバグかも‥‥‥
android:hardwareAccelerated="false" 指定しても駄目だ‥‥‥。コレどう解決するんだ?コレも昨日と同じく状況わからず・・・
状況調べてみたら、某AdのJS実行 => SecurityException でWebView落ちる =>アプリも落ちる の流れらしい。 URLな感じだけど try-catchじゃ逃げられないよな。。 RuntimeError級だし
でもまあ Androdi Runtimeで落ちるわけではないので、多分正確にはWebViewで実行してるJSの処理が中断してしまう という事なんだろうな。。。
落ちる件自体の対処については、OnCreate直下ではやらず
Delayして初期化するようにしたら上手く行ったんだけど
表示がうまく出ない =>WebView上でSecurityException等の話は対処できてない(汗。
こっちの方は、JSの方でalertダイアログかなんか出てるっぽい。
携帯サイト用JS用のAd => WebViewで出そう の論理だとまあそういうこともあるよね(汗
問題はこういうやつほど単価が高いって話なんだよな。。。
4系だからバンザイ状態ではないんだな。。
まあだからAd => アプリ内課金のほうが楽じゃね?
の流れあったりするようだし。。。
WebView mWebView = (WebView)findViewById(R.id.webtest); mWebView.getSettings().setJavaScriptEnabled(true); mWebView.loadUrl("file:///android_asset/demo.html"); // mWebView.setWebChromeClient(new WebChromeClient(){ // @Override // public boolean onJsAlert(WebView view, String url, String message, JsResult result) { // Toast.makeText(act, message, Toast.LENGTH_SHORT).show(); // return super.onJsAlert(view, url, message, result); // } // });
でも // の処コメントでも2系だと動くんだよな。。(汗
- assets/demo.html
<div id="str">default</div> <script> alert("welcome!"); document.getElementById("str").innerHTML='hogehoge'; </script>
でもまあWebView周りは結構色々有りそうなので調べてみたほうがいいのかもしれない
うがー。GN 4.1のAdがWebViewがクラッシュする=>アプリ落ちる=>何とかして っていわれてもな・・。コレずっと前から報告して回避方法わからんといっても相変わらず伝わらない。。。4.0,4.2とかは動くっていうイヤラシさ。というかIOSでも落ちてるんだけど
Adの中のWebViewを w.stopLoading(); w.pauseTimers(); と止めちゃえばなんとかなるのはわかってるけど、内部レイアウトだしな。。Groovyとか使えばちょくに触れるんだけどorz
getChildAtでとってくしか無いのかな‥‥‥。WebViewをクラッシュするようなJS走らせるのやめてほしい<=でも儲かるためにはそのJS走らせないと駄目 っていうジレンマが (技術力 != 営業力)だよな。。<広告会社さん
まあ普通の他の方の広告ありアプリとかも 広告切り替わるタイミングでパツンと落ちるのは何度か経験してるので普通のやり方じゃどうにもならないと思うんだけどな‥‥なんとかするのが技術者でしょ!の論調には勝てんわあ。。
糞。Fluctの消えちゃう現象やっとわかった。setVisibility(View.GONE) or setVisibility(View.INVISIBLE) あたりすると広告自体が破棄されちゃう。確かにJDでみると deleteView って関数呼んでるな。。
この作りだとstopする段階で 1回destory呼んで作りなおすほうが楽かもな。。。スレッド起こしたままだと重くなるし‥‥
GN 4.1 GPUレンダリングOFFにしたらAdでクラッシュしなくなった。一応 android:hardwareAccelerated="false"な記述は入れてるんだけどな‥‥‥softLayer設定してみても効かない‥‥(ON状態で
うーん。URL と同じ現象かな‥‥(こっちはSEG吐いて クラッシュするけど。。
AndroidのWebViewでassets内のhtmlを#つきで読み込む - アキバ戦線異臭アリ!
http://www.skyisme.com/knowledge/2011/07/17/android-webview%E3%81%A7%E3%83%AD%E3%83%BC%E3%82%AB%E3%83%AB%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B/
エイバースの中の人 : AndroidとWebkitで作るゲームフレームワーク
Android4.0のWebViewでloadUrlが出来ない。その2: とある下っ端プログラマーのおぼえがき
Android webview, loading javascript file in assets folder - Stack Overflow
たった2ファイルで,HTML+JS製のネイティブAndroidアプリを作る手順 (動作するサンプルコード付き。WebViewの活用方法) - 主に言語とシステム開発に関して
TL上のメモ)
Nexus 7に『Andorid 4.2』がキター!!早速新機能を見てみる! GaGaGadget (4 users) URL #androidjp