{"id":15172134,"url":"https://github.com/amay077/xamarin.forms.googlemaps","last_synced_at":"2025-04-11T06:16:36.669Z","repository":{"id":9277244,"uuid":"61471160","full_name":"amay077/Xamarin.Forms.GoogleMaps","owner":"amay077","description":"Map library for Xamarin.Forms using Google maps API","archived":false,"fork":false,"pushed_at":"2024-07-23T19:22:51.000Z","size":4970,"stargazers_count":545,"open_issues_count":168,"forks_count":356,"subscribers_count":55,"default_branch":"master","last_synced_at":"2025-04-11T06:16:29.234Z","etag":null,"topics":["andriod","c-sharp","google-maps","ios","uwp","xamarin","xamarin-forms"],"latest_commit_sha":null,"homepage":"https://www.nuget.org/packages/Xamarin.Forms.GoogleMaps/","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/amay077.png","metadata":{"files":{"readme":"README-ja.md","changelog":null,"contributing":"CONTRIBUTING-ja.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-06-19T08:31:18.000Z","updated_at":"2025-01-18T11:04:22.000Z","dependencies_parsed_at":"2023-10-20T16:45:26.366Z","dependency_job_id":"c3f73f03-9221-414b-afa0-1ec769e89812","html_url":"https://github.com/amay077/Xamarin.Forms.GoogleMaps","commit_stats":{"total_commits":995,"total_committers":43,"mean_commits":23.13953488372093,"dds":"0.11758793969849246","last_synced_commit":"a7523e77b230a9be3ff04b6caa9331913c8e3177"},"previous_names":[],"tags_count":86,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amay077%2FXamarin.Forms.GoogleMaps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amay077%2FXamarin.Forms.GoogleMaps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amay077%2FXamarin.Forms.GoogleMaps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amay077%2FXamarin.Forms.GoogleMaps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/amay077","download_url":"https://codeload.github.com/amay077/Xamarin.Forms.GoogleMaps/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248351394,"owners_count":21089272,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["andriod","c-sharp","google-maps","ios","uwp","xamarin","xamarin-forms"],"created_at":"2024-09-27T09:41:18.172Z","updated_at":"2025-04-11T06:16:36.648Z","avatar_url":"https://github.com/amay077.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"## ![logo](logo.png) Xamarin.Forms.GoogleMaps \n![](https://img.shields.io/nuget/v/Xamarin.Forms.GoogleMaps.svg) ![](https://img.shields.io/nuget/dt/Xamarin.Forms.GoogleMaps.svg) [![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](http://gitter.im/Xamarin-Forms-GoogleMaps/public) [![donate/kyash](https://img.shields.io/badge/donate-kyash-orange.svg)](#寄付)\n\n[English README is here！](README.md)\n\nXamarin.Forms 用の Googleマップライブラリです。\n\n[Xamarin.Forms.Maps](https://github.com/xamarin/Xamarin.Forms) をフォークして作っているので、使い方はほとんど同じです。\n\n\n## デモアプリ\n\nこのライブラリの全ての機能が試せるデモアプリを以下より配信しています。このアプリのソースは [XFGoogleMapSample](https://github.com/amay077/Xamarin.Forms.GoogleMaps/tree/master/XFGoogleMapSample) です。\n\n* [Android DEMO Apps](https://install.mobile.azure.com/users/okuokuoku/apps/xfgooglemapsample/distribution_groups/trial) - このリンクをAndroidのブラウザで開いてください\n* iOS DEMO Apps - [Gitter](https://gitter.im/Xamarin-Forms-GoogleMaps/public) かなにかでリクエストしてください（デバイスのUUIDを教えてもらう必要があります）\n\n![screenshot](screenshot01.png)\n\n## なぜこれを作った\n\nXamarin公式の地図ライブラリ [Xamarin.Forms.Maps](https://developer.xamarin.com/guides/xamarin-forms/user-interface/map/) は、非常に機能が少ないです（Googleマップ、Appleマップ、Bingマップで機能を共通化するのはとても難しいのでしょう）。\n\n特に感じるのは、BingマップSDKがとてもチープなことです。ベクトルタイルでもないし、マーカーの吹き出し(InfoWindow\n)も無いようです。モバイルアプリの市場のほとんどは Android と iOS なのに、Bingマップのサポートは必要ないように感じます。また、iOS でも Appleマップ よりも Googleマップ を使用した方が、 Android/iOS で共通化しやすいと感じます。\n\nこのライブラリは、メインターゲットを iOS と Android だけに限定し、Xamarin.Forms.Maps でできない機能を実現するために作りました。\n\n異なる地図SDKで実現可能な最小限の機能しか持たない Xamarin.Forms.Maps に対して、 **同じ Google Maps で多くの共通機能を実現できるのが Xamarin.Forms.GoogleMaps です。**\n\n## Xamarin.Forms.Maps との比較\n\n|機能|X.F.Maps|X.F.GoogleMaps|\n| ------------------- | :-----------: | :-----------: |\n|地図の種類|Yes|Yes|\n|渋滞状況地図|-|Yes|\n|地図イベント|-|Yes|\n|地図の移動(アニメーション付き)|Yes|Yes|\n|地図の移動(アニメーション無し)|-|Yes|\n|ピン|Yes|Yes|\n|カスタムピン|-|Yes|\n|ピンのドラッグ\u0026ドロップ|-|Yes|\n|ポリゴン|-|Yes|\n|ライン|-|Yes|\n|円|-|Yes|\n|カスタム地図タイル|-|Yes|\n\n\n詳しくは、[Xamarin.Forms.Maps との比較](https://github.com/amay077/Xamarin.Forms.GoogleMaps/wiki/Xamarin.Forms.Maps との比較) を見て下さい。\n\n## セットアップ\n\n* Available on NuGet: https://www.nuget.org/packages/Xamarin.Forms.GoogleMaps/ [![NuGet](https://img.shields.io/nuget/v/Xam.Plugin.Geolocator.svg?label=NuGet)](https://www.nuget.org/packages/Xamarin.Forms.GoogleMaps/)\n* PCLプロジェクトと各プラットフォームプロジェクトにインストールしてください\n\n## サポートするプラットフォーム\n\n|Platform|Supported|\n| ------------------- | :-----------: |\n|iOS Unified|Yes|\n|Android|Yes|\n|Windows 10 UWP|No|\n|その他|No|\n\n## 使い方\n\n* [Map Control - Xamarin](https://developer.xamarin.com/guides/xamarin-forms/user-interface/map/)\n* [Xamarin.Formsで地図を表示するには？（Xamarin.Forms.Maps使用） - Build Insider](http://www.buildinsider.net/mobile/xamarintips/0039)\n\nとほぼ同じです。\n初期化メソッドが ``Xamarin.Forms.Maps.Init()`` から ``Xamarin.Forms.GoogleMaps.Init()`` に変更になっています。\n\niOS の場合、 [Google Maps API for iOS](https://developers.google.com/maps/documentation/ios-sdk/) の API キーを取得し、``AppDelegate.cs`` にて ``Init`` に渡してください。\n\n```csharp\n[Register(\"AppDelegate\")]\npublic partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate\n{\n    public override bool FinishedLaunching(UIApplication app, NSDictionary options)\n    {\n        global::Xamarin.Forms.Forms.Init();\n        Xamarin.FormsGoogleMaps.Init(\"your_api_key\");\n        LoadApplication(new App());\n\n        return base.FinishedLaunching(app, options);\n    }\n}\n``` \n\n既定の名前空間が ``Xamarin.Forms.Maps`` から ``Xamarin.Forms.GoogleMaps`` に変更されています。他のAPIはすべて同じです。\n\nサンプルプログラムが、\n\n* [XFGoogleMapSample](https://github.com/amay077/Xamarin.Forms.GoogleMaps/tree/master/XFGoogleMapSample)\n\nにあります。\n\n## 採用事例\n\nXamarin.Forms.GoogleMaps が使われているアプリを紹介します(他にもあったら [教えてください](https://github.com/amay077/Xamarin.Forms.GoogleMaps/issues/512))。\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ch3\u003e\u003ca target=\"_blank\" href=\"https://www.herenow.city/\"\u003eHereNow\u003c/a\u003e\u003c/h3\u003e\n      \u003cimg src=\"showcase_herenow.jpg\" width=\"200\" width=\"200\" style=\"max-width:100%;\"\u003e\n      \u003cp\u003eby \u003ca target=\"_blank\" href=\"https://www.cinra.co.jp/\"\u003eCINRA, Inc.\u003c/a\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ch3\u003e\u003ca target=\"_new\" href=\"https://www.citybee.lt/\"\u003eCityBee\u003c/a\u003e\u003c/h3\u003e\n      \u003cimg src=\"showcase_citybee.png\" width=\"200\" width=\"200\" style=\"max-width:100%;\"\u003e\n      \u003cp\u003e\u0026nbsp;\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ch3\u003e\u003ca target=\"_new\" href=\"https://itunes.apple.com/tr/app/rentacarss-ara%C3%A7-takip/id1276280125\"\u003eRentacarss Araç Takip\u003c/a\u003e\u003c/h3\u003e\n      \u003cimg src=\"showcase_rentacarss.jpg\" width=\"200\" width=\"200\" style=\"max-width:100%;\"\u003e\n      \u003cp\u003e\u0026nbsp;\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ch3\u003eyakala.co\u003c/h3\u003e\n      \u003ca target=\"_blank\" href=\"https://apps.apple.com/tr/app/yakala-co/id834961121?l=tr\"\u003eiOS\u003c/a\u003e\n      \u0026nbsp;/\u0026nbsp;\u003ca target=\"_blank\" href=\"https://play.google.com/store/apps/details?id=com.mobven.yakalaco\"\u003eAndroid\u003c/a\u003e\n      \u003cimg src=\"showcase_yakala.png\" width=\"200\" width=\"200\" style=\"max-width:100%;\"\u003e\n      \u003cp\u003eby \u003ca target=\"_blank\" href=\"http://www.dakicksoft.com/\"\u003eDakicksoft\u003c/a\u003e\u003c/p\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ch3\u003e\u003ca target=\"_blank\" href=\"https://itunes.apple.com/us/app/transantiagomaster/id541341697?mt=8\"\u003eTransantiagoMaster\u003c/a\u003e\u003c/h3\u003e\n      \u003cimg src=\"https://user-images.githubusercontent.com/1848210/47026824-b3d31c00-d13c-11e8-926a-d7e68403e856.png\" width=\"200\" width=\"200\" style=\"max-width:100%;\"\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ch3\u003eCmsApp\u003c/h3\u003e\n      \u003ca target=\"_blank\" href=\"https://itunes.apple.com/us/app/cmsmobileapp/id1151248489?ls=1\u0026mt=8\"\u003eiOS\u003c/a\u003e\n      \u0026nbsp;/\u0026nbsp;\u003ca target=\"_blank\" href=\"https://play.google.com/store/apps/details?id=net.winsir.cms.CmsMobile\"\u003eAndroid\u003c/a\u003e\n      \u003cimg src=\"https://user-images.githubusercontent.com/20931876/64476046-8540a400-d147-11e9-9b62-22894d5e2ffd.png\" width=\"200\" width=\"200\" style=\"max-width:100%;\"\u003e\n      \u003cp\u003eby \u003ca target=\"_blank\" href=\"http://cms.winsir.net/\"\u003eRuben Carreon\u003c/a\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ch3\u003eUsynligO\u003c/h3\u003e\n      \u003ca target=\"_blank\" href=\"https://apps.apple.com/us/app/usynligo/id1306699569\"\u003eiOS\u003c/a\u003e\n      \u0026nbsp;/\u0026nbsp;\u003ca target=\"_blank\" href=\"https://play.google.com/store/apps/details?id=com.Benum.UsynligO\"\u003eAndroid\u003c/a\u003e\n      \u003cimg src=\"https://lh3.googleusercontent.com/fqVdiOUQTz7oBwCccvmgq8z8tmV0Ip6tLBI6SCEDVHiKcVGGZWwUrEufJ-iOmUZhxu8=s180-rw\" width=\"200\" width=\"200\" style=\"max-width:100%;\"\u003e\n      \u003cp\u003eby \u003ca target=\"_blank\" href=\"https://play.google.com/store/apps/developer?id=Trond+Benum\"\u003eTrond Benum\u003c/a\u003e\u003c/p\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ch3\u003eTaiwan-AskFaceMask (問口罩)\u003c/h3\u003e\n      \u003ca target=\"_blank\" href=\"https://apps.apple.com/tw/app/id1498868646\"\u003eiOS\u003c/a\u003e\n      \u0026nbsp;/\u0026nbsp;\u003ca target=\"_blank\" href=\"https://play.google.com/store/apps/details?id=tw.goodjob.askfacemaskapp\"\u003eAndroid\u003c/a\u003e\n      \u003cimg src=\"showcase_taiwan_askfacemask.gif\" width=\"200\" width=\"200\" style=\"max-width:100%;\"\u003e\n      \u003cp\u003eby \u003ca target=\"_blank\" href=\"https://github.com/JamestsaiTW\"\u003eJamestsaiTW\u003c/a\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ch3\u003eBipbip Navigation GPS\u003c/h3\u003e\n      \u003ca target=\"_blank\" href=\"https://apps.apple.com/app/id1588690430\"\u003eiOS\u003c/a\u003e\n      \u0026nbsp;/\u0026nbsp;\u003ca target=\"_blank\" href=\"https://play.google.com/store/apps/details?id=com.Beepbip\"\u003eAndroid\u003c/a\u003e\n      \u003cimg src=\"showcase_bipbip.png\" width=\"200\" width=\"200\" style=\"max-width:100%;\"\u003e\n      \u003cp\u003eby \u003ca target=\"_blank\" href=\"https://bipbip.tv/\"\u003eBipbip\u003c/a\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003ch3\u003eeLandFly\u003c/h3\u003e\n      \u003ca target=\"_blank\" href=\"https://apps.apple.com/app/id1527799439\"\u003eiOS\u003c/a\u003e\n      \u0026nbsp;/\u0026nbsp;\u003ca target=\"_blank\" href=\"https://play.google.com/store/apps/details?id=com.elandfly.elandfly\"\u003eAndroid\u003c/a\u003e\n      \u003cimg src=\"showcase_elandfly.png\" width=\"200\" width=\"200\" style=\"max-width:100%;\"\u003e\n      \u003cp\u003eby \u003ca target=\"_blank\" href=\"https://www.elandfly.com/\"\u003eelandfly.com\u003c/a\u003e\u003c/p\u003e            \n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e  \n\u003c/table\u003e\n\n## リリースノーツ\n\n[Releases](https://github.com/amay077/Xamarin.Forms.GoogleMaps/releases) または [RELEASE_NOTES](RELEASE_NOTES.md) を見てください。\n\n## 今後の予定\n\nなるべく Xamarin.Forms.Maps の API に準じ、Google Maps固有の機能のみ API を追加するつもりです。 \n\n機能要望は、 [@amay077](https://twitter.com/amay077) または、ISSUE やプルリクください！\n追加機能案は以下の通りです。\n\n* ~~Pin の InfoWindow の Visible プロパティ~~ v1.0.0で対応\n* ~~Pin のタップ＆ホールドによる移動~~ v1.5.0で対応\n* ~~Polygon, Polyline, Circle の描画サポート~~ v1.1.0で対応\n* [その他の機能改善リスト](https://github.com/amay077/Xamarin.Forms.GoogleMaps/labels/enhancement)\n\nWindows 10 UWP 対応は v5.0.0 から削除しました。\nAndroid/iOS のみ対応します。\n\n## CONTRIBUTION\n\n私たちは、Xamarin.Forms.GoogleMaps への、あなたの貢献に大変感謝します。\n\n開発に参加して頂ける方は、[コントリビューション ガイドライン](CONTRIBUTING-ja.md) を読んで下さい。\n\n## 寄付\n\nXamarin.Forms.GoogleMaps 開発の継続のため、寄付を募集しています。\n\n**Gumroad**\n\n* [Gumroad](https://amay077.gumroad.com/)\n\nあなたの寄付で開発者のモチベーションが上がります、どうかよろしくおねがいします :sushi:\n\n## ライセンス\n\n[LICENSE](LICENSE.txt) をみて下さい。\n\nlogo.png by [alecive](http://www.iconarchive.com/show/flatwoken-icons-by-alecive.html) - [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/deed)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famay077%2Fxamarin.forms.googlemaps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famay077%2Fxamarin.forms.googlemaps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famay077%2Fxamarin.forms.googlemaps/lists"}