2014年5月14日水曜日

phonegap開発フロー

開発フロー 
 
cordova create pg_triplan com.caihongtown.trip "trip plan"
cd  pg_triplan
cordova platform add android
cordova build
 
emulatorを起動後 
 
cordova emulate android
cordova run android(端末にインストール) 


pluginの管理
cordova pluginインストールしたpluginの表示)
cordova plugin search KEYWORD(使用できるpluginの検索) 
cordova plugin add org.apache.cordova.inappbrowser(追加)
cordova plugin rm org.apache.cordova.console(削除) 

2014年5月7日水曜日

phonegapをブラウザーでデバッグ

jsがブラウザーでデバッグできると便利。phonegap desktopは実現してくれる。

https://github.com/jxp/phonegap-desktop

使い方:
1)Copy debugdata.json into the root www folder of the project
2)Use the phonegap-desktop.js in place of the standard phone gap library
3)web serverを起動。pythonを利用すれば便利。python -m SimpleHTTPServer 8080
4)そして http://localhost:8080/ にアクセス

2014年5月6日火曜日

UPDATE column from other columns

sql serverにLATとLNGをfloatとして保存した。位置情報をNULLになっていたGPSLOCに保存したい。

update [dbo].SHOPINFO
set GPSLOC = geography::Point(LAT,LNG,4326)
GO

2014年5月2日金曜日

SSMS経由でExcelデータをAzure SQLへインポート

2つテクニックがあります。
1)データインポートのメニューを出すために、ローカルDBに接続し、そのDBの名前を右クリックすると、「タスク→データのインポート」選択できる。その後、変換先のサーバー名をAzure SQLを指定すれば良い。

2)Azure SQLのテーブルには、[id]列は必須です。「マッピングの編集→SQLの編集」で
「[id] int identity primary key,」を追加。


詳細な操作は下記ビデオをご覧ください。

http://www.youtube.com/watch?v=QAd2uAGNHPw

2014年4月11日金曜日

Azure sql server上保存された場所を現在地からの距離順で表示

Azure sql serverのtableに場所名とその位置情報を保存している。
現在地からの距離順で場所を表示させる方法。

Azure mobile serviceのtableスクリプトを利用する。
読み取り操作に、以下のスクリプトを入れる。
requestのパラメータとして、現在地の経度と緯度をserver scriptに渡す。
SHOPINFOのGPSLOC列から位置情報を取り出し、距離を計算する。

function read(query, user, request) {
    var lat = request.parameters.lat;
    var lng = request.parameters.lng;
    var sql = "DECLARE @g geography;"+
              "SET @g = geography::Point(?,?, 4326);"+
              "SELECT *,round(@g.STDistance(GPSLOC),0) as DIST from [dbo].SHOPINFO order by DIST;"
    mssql.query(sql,[lat,lng],{success: function(results) {
        request.respond(200,results);
    }
    })
}

アプリから、get methodで以下のURLにアクセスする。
https://abcdef.azure-mobile.net/tables/shopinfo?lat=latitudeFromGps&lng=longitudeFromGps


参考になったページ:http://hatsune.hatenablog.jp/entry/2014/02/06/092155

2014年2月25日火曜日

既存のAzure上テーブルをmobile serviceにリンクさせる

Azureのsql server管理ポータルでmobile serviceと同じ名前のキスーマに追加し、編集してあるテーブルをmobile serviceにリンクさせるには、mobile serviceのDATAタブの「CRAETE」をクリックし、既存のテーブル名を指定するだけで、リンクできる。

以下のURLには、もっと詳しい情報がある。
http://blogs.msdn.com/b/jpsanders/archive/2013/05/24/using-an-existing-azure-sql-table-with-windows-azure-mobile-services.aspx

2014年2月24日月曜日

sql serverによる2点間の距離を出す

位置gとsql serverに保存している位置h間の距離を出すには、以下のTransact-SQLを使用

DECLARE @g geography;
DECLARE @h geography;
SET @g = geography::Point(35.66263195952044,139.7095092421263, 4326);
set @h = (select location from [dbo].[Landmark] where id=1);
SELECT @g.STDistance(@h);