Android4.3でGoogle Mapが表示されない

  •  

 

弊社で開発したアプリで、以下の不具合が上がってきました。

  • Google Mapが表示されない
  • メニューがズレて表示される

Google Mapが表示されない

※2013.10.24 追記がページ下部にありますので、最初にそちらをお読みください。

何となくコーディングミスのような。
でも、woodsmallで所有している実機(Android2.3)2機では表示される。
表示されない端末がXperiaの最新端末だったので、あーまた端末依存かな?程度に思っていたんですが。
(一昔前のXperiaは機種依存が多かったです)

試しにGoogle製Nexus7で試してみた所、こっちもアウト。
Nexus7で表示されないってことは端末依存ではない。Androidのバージョン?

あっ!
この案件、外注で開発した案件なんだけど、「google_play_services(Google Maps Android V2というアプリ上に地図を表示する為のライブラリ)」のリビジョンが古いのに違和感を覚えたのを思い出した。
AndroidManifestのversionCodeから検索をかけてみるとRev.7(最新のライブラリはRev.10)。

で、次にAndroid4.3がリリースされた日を検索してみると・・・2013年7月24日。

なんてこった!
単純にライブラリが古いだけでした。なるほど、バグが出てる端末とか全てが説明がつく。
こっちは解決。

メニューがズレて表示される

20130908_1

ソース解析してみると、いたってシンプル。
お馴染みのメニューを表示するソース。
バグりようがない。

@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		getMenuInflater().inflate(R.menu.tab_main, menu);
		return true;
	}

勘の良い方なら、もう分かってると思うけど、こっちも「android-support-v4.jar(プログラマがほぼ制御できない挙動をさせる為のライブラリみたいなもの)」が古かった。

Googleから提供されているライブラリは、基本新しいOSがリリースされる時にバージョンアップされるので、アプリを開発する際は、最新のライブラリをSDK Managerからダウンロードして使いましょう。
というお話でした。

実を言うと、弊社にはAndroid4.0以降の最新端末が無いので完全に予測で書いてます。
外れてたらかっこ悪いですが・・・数時間後には全てが判明します。

—————————————————————–
2013.10.24 追記

まずMapが表示されない件ですが、ライブラリの問題ではありませんでした。
事象としてはAndroid4.0以上では表示されない。
(Android2.3では正常に表示されている。Android3.0は未確認)

Android4.0以上でも、アプリの「データを削除」すると初回は表示されるけど、2回目以降は表示されない。
Google Maps Android V2のAPI KEYも確認したけど、合ってるっぽい。
結論から言うと、プロジェクトから作り直して、Activityやリソースをコピペしたら表示されました。
AndroidManifest.xmlが、訳が分からない位すごい事になっていた(存在しないActivityや訳の分からんパーミッション等々)ので原因はそれかな?
—————–

メニューがずれる件。
こちらもライブラリの問題ではありませんでした。

多分dimen.xmlの指定が間違っていたっぽい。

この案件、フリーの方に開発をお願いしたんですが、プログラムもlayoutもdrawableの指定もカオス!とにかくカオス!
折角のAndroidというかJavaの概念がグチャグチャでした。

出来ないなら、出来ないと言う勇気。
分からないなら、分からないと言う勇気。

開発者にとって、とても重要なことだと思います。
—————————————————————–

株式会社ウッズモールの小林でした。
https://woodsmall.co.jp/

関連記事

コメント

この記事へのコメントはありません。

TOP