Xamarin & Google Maps SDKでクロスプラットフォーム地図アプリ
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Xamarin & Google Maps SDKでクロスプラットフォーム地図アプリ

on

  • 2,076 views

ジオメディアサミット大阪2013懇親会ライトニングトーク

ジオメディアサミット大阪2013懇親会ライトニングトーク
Xamarin & Google Maps SDKでクロスプラットフォーム地図アプリ

Statistics

Views

Total Views
2,076
Views on SlideShare
2,058
Embed Views
18

Actions

Likes
2
Downloads
3
Comments
0

1 Embed 18

https://twitter.com 18

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Xamarin & Google Maps SDKでクロスプラットフォーム地図アプリ Presentation Transcript

  • 1. Xamarin & Google Maps SDKでクロスプラットフォーム地図アプリこちずふぁん こと 大塚恒平@kochizufan
  • 2. クロスプラットフォーム地図アプリ開発どうされてますか?開発環境ネイティブアプリ開発HTML5 + PhoneGap、他地図APIMapKit等ネイティブSDKOpenLayers、Leaflet等HTML5地図API
  • 3. ネイティブアプリ利点:パフォーマンス最高表現力で妥協しなくてよい欠点:プラットフォーム毎にスキルの習得が必要習得コストでかい使う言語がどいつもこいつもObjective-C : キモいJava : ウザい
  • 4. HTML5 + Phoなんちゃら利点:覚える言語がJavaScript + css + HTML5限定Write Once, Run Anyware (に比較的近い)欠点:パフォーマンス悪い(特にUIで)無理して、頑張って、涙の末に報われない感HTML5の実装状況に左右される(ArrayBuffer、WebWorkerとか)
  • 5. ネイティブ地図SDK利点:パフォーマンス最高ユーザエクスペリエンス最高(連続ズーム、回転表示)欠点:どこかの地図の質について語りたい人がいっぱい居るプラットフォーム毎にできる事が違い過ぎる
  • 6. HTML5地図API利点:Google地図やOpenStreetMap、独自タイル地図等、選択肢がいっぱい欠点:とびとびズームやめようや…ちょっとは回転しようや…オフライン用途に使いにくいよね
  • 7. そこで開発環境 : Xamarinhttp://xamarin.com/.NET環境(MonoDroid、MonoTouch)上で動くアプリをc#で書ける開発環境XamarinStudioとしてMac、Windows上で動く他、Visual Studioのプラグインとしても動く (その場合、Windows Phoneも視野に入れて開発可能)UI含め、ネイティブSDKの薄いラッパを提供共通ロジックはc#のノリでプラットフォーム間共有可能UIはネイティブコンポーネントをそのまま利用可能
  • 8. もひとつ地図API : Google Maps SDKAndroid: Google Maps API for Android v2https://developers.google.com/maps/documentation/android/iOS: Google Maps SDK for iOShttps://developers.google.com/maps/documentation/ios/Googleの高品質地図!ベクタ地図!Googleの高機能UX!中間ズーム!回る!鳥瞰視点も!Google嫌い?OSMガー?タイルインタフェース使えばいいじゃない!最近iOS版にもついたよ!
  • 9. サンプルMBTilesのファイルから独自タイルを読み込んで表示するサンプル on iOS and Androidhttps://github.com/tilemapjp/xamarinGMS突貫工事で作ったのでまだREADMEありませんすみません。明日以降作ります。プラットフォーム間のロジック共有方法は、本当はMvvmCross(https://github.com/slodge/MvvmCross)という技術を使うべきなのですが、まだVisualStudioでしか使えずXamarinStudioでは使えないのと、難しくて頭爆発するので、オレオレ共有方法で共有してます。良い子はちゃんとMvvmCrossを覚えましょう。
  • 10. サンプルの動かし方共通 :どちらもGoogle Maps API/SDKのAPI Keyを取得してちゃんと書き込んでやりましょう。Android :Google Play Servicesのprojectをgithubからダウンロードしてきて、ソリューションに加えましょう。設定方法は、amay師匠の以下記事を参考にhttp://qiita.com/items/2d76a090d49926805431iOS :iOSのGoogle Maps SDKは、Xamarin Storeで無料入手できます。Componentsから選択してDLし、プロジェクトに加えましょう。バージョンは1.3.0以降を使います。
  • 11. ソリューション構成共通ロジック用プロジェクトプラットフォームに影響しないロジックはここに。プラットフォーム別ロジック用プロジェクト共通ロジックをプラットフォーム別にコンパイルするためのシンボリックリンクと、デバイス内フォルダ構等、どうしてもプラットフォーム依存のものはここにAndroid用Viewプロジェクトユーザエクスペリエンスに直結するビューのロジックは、ネイティブSDKと同じコンポーネントを、c#の文実装できます。iOS用ViewプロジェクトiOS用GoogleMapsコンポーネントXamarinStoreで1.3.0を入手しましょう。Android用Google Play Serviceプロジェクトgithubで入手し、Amay師匠記事でセットアップ。
  • 12. 実行吹田市付近1945年の米軍地図、MBTilesファイル表示iOS : Android :
  • 13. 最大の欠点開発環境が高いよ!トライアル(無償)では、ショボいプログラムしか作れない評価ライセンスでは、フル機能が使えるが、有効期間1ヶ月ちゃんとした開発をしようと思うと、プラットフォーム毎に年間$299、iOS/Android合計で$598さらにWindows Phoneまで視野に入れるなら、VisualStudio連携可能版、プラットフォーム毎に$999、iOS/Android合計+Visual Studio自身まで考えると30万円コース個人の開発環境としてはキツい…その費用と、c#による開発効率化&ナレッジ共通化&特化技術者の不要化を量りにかけてペイすればお得
  • 14. おしまいデバイス上で動いている様子、コンパイルの様子等の実際が見たい方は大塚まで