位置情報を蓄積するアプリ『AiSensor2Web』

2010年09月29日 11:12 by ふじい りょう(Parsley)
AiSensor2Web:起動画面

AiSensor2Web:起動画面

今回ご紹介する『AiSensor2Web』は、Android端末のGPSを含んだセンサー情報を定期的に蓄積し、インターネット上に構築した任意のサーバにPOST送信するアプリになります。


自分の行った場所を常時記録してくれるので、活動状況を振り返る際などに便利なアプリです。


AiSensor2Web:設定画面

AiSensor2Web:設定画面

サーバ構築が必要!コピー&ペーストしてデータの送信先のページを用意しよう

「データがありません」という表示が出ます。Menuボタンを押して設定画面を呼び出します。


アプリ自体は、位置情報を任意のサーバに送信する事がメインとなるため、位置情報のログを受信するサーバ構築が必要となります。また、サーバ構築にはPHPを理解し、サーバを所有していること、また、ある程度のネットワークの知識が必要となります。


よって、これらの知識がない方が本アプリを使うには、かなりハードルが高くなるので注意ください。こうした知識がない方でも、本アプリを使えるように紹介しますが、最低限サーバを用意する必要があります。サーバは、契約しているISP等のレンタルサーバでも構いませんが、PHPが動作する事が必須条件となります。


姉妹アプリの『AiRing2Web』『AiSms2Web』と同様、サーバを用意できた場合、ログをPOSTするページを作成する必要があります。PHPを使用してページを作成するのですが、今回は開発元のエーアイサービスの協力により、シンプルなソースを用意しました。下記のソースをテキストエディタ等にコピー&ペーストして、任意のファイル名「●●●.php」というファイルを作成してください。後は作成したファイルを用意したサーバにアップロードすれば、準備完了です。


アプリ上で指定しなければいけないURLは、ここで構築したURLとなります。以上で、本アプリを使用するための条件が整います。



  • 以下ソースコードです


<?php

//ログファイル

$file = ‘./api_log.txt’;

//ai*2wegから投稿された場合の処理

if(count($_POST)!=0){

//POSTされたデータ

$data = “”;

foreach($_POST as $key=>$value){

$data .= $key.”=”.$value.”\t”;

}

//ファイルへの書き込み

$text = file_get_contents($file);

$text .= $data.”\n”;

file_put_contents($file, $text);

//投稿結果表示

header(“Content-Type: text/html; charset=UTF-8”);

print “api “.count($_POST).”項目 “;

exit;

}

//以下、ブラウザで閲覧した場合

$text = file_get_contents($file);

?>

<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd”>

<html lang=”ja”>

<head>

<meta http-equiv=”content-type” content=”text/html; charset=utf-8″>

<meta http-equiv=”content-style-type” content=”text/css”>

<meta http-equiv=”content-script-type” content=”text/javascript”>

<title>API投稿ログ</title>

</head>

<body>

<table border=1>

<tr>

<th>投稿内容</th>

</tr>

<?

$rows = explode(“\n”,$text);

foreach($rows as $r){

print “<tr><td>”.$r.”</td></tr>”;

}

?>

</table>

</body>

</html>





送信先を設定して使用開始!端末情報を把握できる

サーバの用意ができたら、アプリを起動します。「データがありません」という表示が出るので、Menuボタンを押して設定画面を呼び出します。


次に、「送信先URLを設定」でサーバのURLを入力してください。ここで、起動間隔や、位置情報の取得の設定の有無などを設定できます。ここでは全ての情報を蓄積させます。また、「即時送信」にチェックを入れれば、データを得て即時に送信することもできますが、ここではOFFにします。


AiSensor2Web:送信先設定(左)起動間隔(中)位置データ(右)

AiSensor2Web:送信先設定(左)起動間隔(中)位置データ(右)


端末データを受信すると、取得データが新しいものから順に列で表示されます。タップすると、取得日時、GPS情報、センサー情報といった詳細なデータを見ることができます。Googleマップやストリートビューを閲覧することも可能です。


AiSensor2Web:データ取得後(左)データ(右)

AiSensor2Web:データ取得後(左)データ(右)


「送信」をタップすると、先ほど設定したサーバー上のファイルに、データが送られます。


AiSensor2Web:送信結果

AiSensor2Web:送信結果


このように『AiSensor2Web』は、定期的に端末の情報を把握する必要がある場合に威力を発揮するアプリです。ただ、常に起動しておくと電池の消費が早くなりますので、注意が必要になります。


また、他のシリーズと同様、PHPの知識のある方なら、他のデータベースと紐付けをするなどした活用もできるのではと思います。是非とも有意義な使い方を編み出してみてください。

<総括>

Android端末で受信したセンサー情報をインターネット上の任意のサーバにPOST送信するアプリです。開発者向けのアプリで、POSTするサーバの構築内容次第で汎用性が広がると思います。一方、アプリ単体では機能しないので、サーバやPHPの知識がない方には敷居の高いアプリとなっています。

次の画像へ→

AiSensor2Web
a-i-service AiSensor2Web 無料

『AiSensor2Web』~位置情報を蓄積するアプリ~

上のQRコードを読み取ってAndroid端末でダウンロード

無料QRコードアプリ