gaggitのブログ

コーディング、ガジェット、TIPS関連、FX

Fusion Tables へのインポート

今日は、CSVファイルをFusion Tablesへインポートしてみたいと思います。なお、Googleアカウント、Googleドライブは既にインストールされていることを条件に書いていきます。

1.画面右下のインジケータ内の「Googleドライブ」を右クリックして、「ウェブ上のGoogleドライブにアクセス」をクリックします。

2.左上の「新規」「その他」「アプリを追加」をクリックします。

f:id:gaggit:20160718071504p:plain

3.右上の検索バーに「fusion tables」と入力し、実行します。

f:id:gaggit:20160718071740p:plain

 4.Fusion Tables(試験運用)横の「接続」ボタンをクリックします。

5.「接続」ボタンをクリックします。

f:id:gaggit:20160718071244p:plain

6.「OK」ボタンをクリックします。

f:id:gaggit:20160718071826p:plain

7.再度、Googleドライブの「新規」「その他」「Google Fusion Tables」をクリックします。

8.「Import new table」画面で、「参照」をクリックし、CSVファイルを選択します。

9.「Separator character」に「Comma」、「Charactor encoding」に「UTF-8」を選択します。

10.「Next」をクリックします。

f:id:gaggit:20160718072658p:plain

11.見出しがないカラムの場合、「Column names are in row」を「None」に選択し、「Next」をクリックします。

f:id:gaggit:20160718073655p:plain

12.「Table name」など変更がなければ、「Finish」をクリックします。

f:id:gaggit:20160718074123p:plain

13.問題なく、約3,000行、インポートできました。

f:id:gaggit:20160718075329p:plain

 

 

参照サイト:

support.google.com

support.google.com

 

 

デバッグ中に同じアプリをもう一つ実行させるとエラーになる 

デバッグ中に同じアプリをもう一つ実行させるとエラーになる時があります。コンソールログには、以下のメッセージがあるかと思います。

Exception while doing past ineration backup: Source ... must be different.

BUILD FAILED

 

対応方法は、そのプロジェクトをリビルド(メニュー「Build」「Rebuild Project」)すればビルドが成功します。

 

 

Manifest.permissionでシンボルを見つけられません

最初は、正常にビルドが終了していたのにコードをいろいろいじっている内にタイトルのエラーとなってしまいました。シンボルが見つけられませんという時は、import文がない、スペルミスです。どうやら、以下のimport文がオートコンプリート機能使用している内に書き換わってたようです。

×:import java.util.jar.Manifest;

○:import android.Manifest;

 

本当は、位置データの情報取得まわりを詳しく記事にする予定が、しょぼい記事になってしまいましたorz。

 

 

 

ツールバーを表示させる方法

MapsActivityでツールバー表示させる方法です。

まず、getUiSettings()メソッドで GoogleMapのユーザインタフェースを取得します。次にisMapToolbarEnabled()で既にズームコントロールが有効になっている か、確認します。有効であればtrue、無効であればfalseを戻します。最後にsetMapToolbarEnabled(true)メソッドで引 数をtrueに設定し、ズームコントロールを有効にします。無効はfalseを引数に設定。

 

サンプル

private GoogleMap mMap;

UiSettings us = mMap.getUiSettings();

if (us.isMapToolbarEnabled()==false){
  us.setMapToolbarEnabled(true);

}

 

マップツールバーは、マーカーをクリックしないと表示されません。ズームコントロールのひだりにあるのがマップツールバーです。

f:id:gaggit:20160608102147p:plain

 

UiSettingsの章には、全部で8つのインタフェースを有効化するメソッドが用意されています。

setAllGesturesEnabled

setCompassEnabled

setIndoorLevelPickerEnabled

setMapToolbarEnabled

setMyLocationButtonEnabled

setRotateGesturesEnabled

setScrollGesturesEnabled

setTiltGesturesEnabled

setZoomControlsEnabled

setZoomGesturesEnabled

 

一番上のsetAllGesturesEnabledを有効化すると、すべてのインタフェースを有効化してくれます。

参照:

UiSettings  |  Google APIs for Android  |  Google Developers

 

MapsActivityでズームコントロールを表示させる方法

MapsActivityでズームコントロールを表示させる方法です。

まず、getUiSettings()メソッドでGoogleMapのユーザインタフェースを取得します。次にisZoomControlEnabled()で既にズームコントロールが有効になっているか、確認します。有効であればtrue、無効であればfalseを戻します。最後にsetZoomControlEnabled(true)メソッドで引数をtrueに設定し、ズームコントロールを有効にします。無効はfalseを引数に設定。

 

サンプル

private GoogleMap mMap;

UiSettings us = mMap.getUiSettings();

if (us.isZoomControlEnabled()==false){
  us.setZoomControlEnabled(true);

}

f:id:gaggit:20160607094600p:plain

コードを追加して、ビルドすると、画面の右下にズームコントロールが表示されました。

 

閑話休題

まだ、JavaScriptのinnerHTML問題を抱えています。今日は、innerHTMLに代えてinsertAdjacentHTML()とIEのオプションでソフトウェアレンダリングを有効にして、検証しています。が、だめだ(また、固まった)orz

 

MapsActivityでズームを行うには

久々にAndroid Studioの開発に戻ってきました。その間にJavaScriptデバッグと検証、技術本の読書、固定回線、家内WiFiルータの導入、Windows10へのアップデートといろいろやってました。なので、開発全然、進んでいません(^^;。現在、マーカーを1000個、並べたところです。で、ズームを調整したいなぁーと思いつつ、Zoomって言うメソッド、中々ないと思ったら、MapsActivity内で既にあるmoveCameraメソッドで設定を行うそうです。灯台下暗しというか。。。

サンプル

googleMap mMap;

LatLng Tokyo = new LatLng(35.681298,139.764058);

float zoom =17.0f;

mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(Tokyo, zoom));

サンプルの解説です。

LatLngは、緯度経度を表す型で、double,double型です。続いて、CameraUpdateFactory.newLatLngZoomの第二引数であるzoomは、ズームレベルです。float型で、1.0から20.0まで設定可能です。1:世界全体、5:大陸、10:市、15:ストリート、20が建物レベルとのこと。

CameraUpdateFactoryクラスには、zoomBy(float amount),zoomIn(),zoomOut(),zoomTo(float zoom)などのメソッドがあるようです。(今、AndroidStudioで確認しました。こんなところにあったのねorz)。なので、ズームだけだったら、zoomIn,zoomOutで十分だと思います。

f:id:gaggit:20160606092451p:plain

参照サイト:

Camera and View  |  Google Maps Android API  |  Google Developers

 

今日もがじがじっと~♪

最近、7SPOTでGoogle Appのダウンロードに失敗する

昨日も、7SPOTからGoogle Appの更新しようとしたところ、失敗する。Webにはアクセス出来ているので、接続は問題ないとおもうのですが、これで三回目です。個々に容量制限など、ポリシー制限かけられているのか、疑いたくなります。

今日もがじがじっと~♪