diff --git a/src/MyTaxiCompany02/.vs/MyTaxiCompany02/v14/.suo b/src/MyTaxiCompany02/.vs/MyTaxiCompany02/v14/.suo
new file mode 100644
index 0000000..fc77f25
Binary files /dev/null and b/src/MyTaxiCompany02/.vs/MyTaxiCompany02/v14/.suo differ
diff --git a/src/MyTaxiCompany02/.vs/config/applicationhost.config b/src/MyTaxiCompany02/.vs/config/applicationhost.config
new file mode 100644
index 0000000..de613a4
--- /dev/null
+++ b/src/MyTaxiCompany02/.vs/config/applicationhost.config
@@ -0,0 +1,1020 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/MyTaxiCompany02/MyTaxiCompany02.sln b/src/MyTaxiCompany02/MyTaxiCompany02.sln
new file mode 100644
index 0000000..2cc6aed
--- /dev/null
+++ b/src/MyTaxiCompany02/MyTaxiCompany02.sln
@@ -0,0 +1,260 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyTaxiCompany02", "MyTaxiCompany02\MyTaxiCompany02\MyTaxiCompany02.csproj", "{5F03108F-2FFC-4800-A530-1011604BA16D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyTaxiCompany02.Droid", "MyTaxiCompany02\MyTaxiCompany02.Droid\MyTaxiCompany02.Droid.csproj", "{EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyTaxiCompany02.iOS", "MyTaxiCompany02\MyTaxiCompany02.iOS\MyTaxiCompany02.iOS.csproj", "{E9FB58FC-AC78-46EF-94C4-FCC821B30190}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyTaxiCompany02.UWP", "MyTaxiCompany02\MyTaxiCompany02.UWP\MyTaxiCompany02.UWP.csproj", "{61D04144-6C88-41A7-B41A-57441B865243}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Ad-Hoc|Any CPU = Ad-Hoc|Any CPU
+ Ad-Hoc|ARM = Ad-Hoc|ARM
+ Ad-Hoc|iPhone = Ad-Hoc|iPhone
+ Ad-Hoc|iPhoneSimulator = Ad-Hoc|iPhoneSimulator
+ Ad-Hoc|x64 = Ad-Hoc|x64
+ Ad-Hoc|x86 = Ad-Hoc|x86
+ AppStore|Any CPU = AppStore|Any CPU
+ AppStore|ARM = AppStore|ARM
+ AppStore|iPhone = AppStore|iPhone
+ AppStore|iPhoneSimulator = AppStore|iPhoneSimulator
+ AppStore|x64 = AppStore|x64
+ AppStore|x86 = AppStore|x86
+ Debug|Any CPU = Debug|Any CPU
+ Debug|ARM = Debug|ARM
+ Debug|iPhone = Debug|iPhone
+ Debug|iPhoneSimulator = Debug|iPhoneSimulator
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|Any CPU = Release|Any CPU
+ Release|ARM = Release|ARM
+ Release|iPhone = Release|iPhone
+ Release|iPhoneSimulator = Release|iPhoneSimulator
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|x64.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Ad-Hoc|x86.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|Any CPU.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|ARM.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|ARM.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|iPhone.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|iPhone.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|x64.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|x64.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|x86.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.AppStore|x86.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|ARM.ActiveCfg = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|ARM.Build.0 = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|iPhone.Build.0 = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|x64.Build.0 = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Debug|x86.Build.0 = Debug|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|ARM.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|ARM.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|iPhone.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|iPhone.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|x64.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|x64.Build.0 = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|x86.ActiveCfg = Release|Any CPU
+ {5F03108F-2FFC-4800-A530-1011604BA16D}.Release|x86.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|Any CPU.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|ARM.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|iPhone.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|iPhoneSimulator.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|x64.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|x64.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|x86.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Ad-Hoc|x86.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|Any CPU.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|Any CPU.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|ARM.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|ARM.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|ARM.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|iPhone.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|iPhone.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|iPhone.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|iPhoneSimulator.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|x64.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|x64.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|x64.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|x86.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|x86.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.AppStore|x86.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|ARM.ActiveCfg = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|ARM.Build.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|ARM.Deploy.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|iPhone.Build.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|iPhone.Deploy.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|iPhoneSimulator.Deploy.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|x64.Build.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|x64.Deploy.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|x86.Build.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Debug|x86.Deploy.0 = Debug|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|Any CPU.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|Any CPU.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|ARM.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|ARM.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|ARM.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|iPhone.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|iPhone.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|iPhone.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|iPhoneSimulator.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|x64.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|x64.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|x64.Deploy.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|x86.ActiveCfg = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|x86.Build.0 = Release|Any CPU
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}.Release|x86.Deploy.0 = Release|Any CPU
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Ad-Hoc|Any CPU.ActiveCfg = Ad-Hoc|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Ad-Hoc|ARM.ActiveCfg = Ad-Hoc|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Ad-Hoc|iPhone.ActiveCfg = Ad-Hoc|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Ad-Hoc|iPhone.Build.0 = Ad-Hoc|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Ad-Hoc|iPhoneSimulator
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Ad-Hoc|iPhoneSimulator.Build.0 = Ad-Hoc|iPhoneSimulator
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Ad-Hoc|x64.ActiveCfg = Ad-Hoc|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Ad-Hoc|x86.ActiveCfg = Ad-Hoc|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.AppStore|Any CPU.ActiveCfg = AppStore|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.AppStore|ARM.ActiveCfg = AppStore|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.AppStore|iPhone.ActiveCfg = AppStore|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.AppStore|iPhone.Build.0 = AppStore|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.AppStore|iPhoneSimulator.ActiveCfg = AppStore|iPhoneSimulator
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.AppStore|iPhoneSimulator.Build.0 = AppStore|iPhoneSimulator
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.AppStore|x64.ActiveCfg = AppStore|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.AppStore|x86.ActiveCfg = AppStore|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Debug|Any CPU.ActiveCfg = Debug|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Debug|ARM.ActiveCfg = Debug|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Debug|iPhone.ActiveCfg = Debug|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Debug|iPhone.Build.0 = Debug|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Debug|x64.ActiveCfg = Debug|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Debug|x86.ActiveCfg = Debug|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Release|Any CPU.ActiveCfg = Release|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Release|ARM.ActiveCfg = Release|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Release|iPhone.ActiveCfg = Release|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Release|iPhone.Build.0 = Release|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Release|x64.ActiveCfg = Release|iPhone
+ {E9FB58FC-AC78-46EF-94C4-FCC821B30190}.Release|x86.ActiveCfg = Release|iPhone
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|Any CPU.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|Any CPU.Build.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|Any CPU.Deploy.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|ARM.ActiveCfg = Release|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|ARM.Build.0 = Release|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|ARM.Deploy.0 = Release|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|iPhone.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|iPhone.Build.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|iPhone.Deploy.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|iPhoneSimulator.Deploy.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|x64.ActiveCfg = Release|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|x64.Build.0 = Release|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|x64.Deploy.0 = Release|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|x86.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|x86.Build.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Ad-Hoc|x86.Deploy.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|Any CPU.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|Any CPU.Build.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|Any CPU.Deploy.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|ARM.ActiveCfg = Release|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|ARM.Build.0 = Release|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|ARM.Deploy.0 = Release|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|iPhone.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|iPhone.Build.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|iPhone.Deploy.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|iPhoneSimulator.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|iPhoneSimulator.Build.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|iPhoneSimulator.Deploy.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|x64.ActiveCfg = Release|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|x64.Build.0 = Release|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|x64.Deploy.0 = Release|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|x86.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|x86.Build.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.AppStore|x86.Deploy.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|Any CPU.ActiveCfg = Debug|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|ARM.ActiveCfg = Debug|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|ARM.Build.0 = Debug|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|ARM.Deploy.0 = Debug|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|iPhone.ActiveCfg = Debug|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|iPhone.Build.0 = Debug|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|iPhone.Deploy.0 = Debug|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|iPhoneSimulator.ActiveCfg = Debug|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|x64.ActiveCfg = Debug|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|x64.Build.0 = Debug|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|x64.Deploy.0 = Debug|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|x86.ActiveCfg = Debug|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|x86.Build.0 = Debug|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Debug|x86.Deploy.0 = Debug|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|Any CPU.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|ARM.ActiveCfg = Release|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|ARM.Build.0 = Release|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|ARM.Deploy.0 = Release|ARM
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|iPhone.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|iPhoneSimulator.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|x64.ActiveCfg = Release|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|x64.Build.0 = Release|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|x64.Deploy.0 = Release|x64
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|x86.ActiveCfg = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|x86.Build.0 = Release|x86
+ {61D04144-6C88-41A7-B41A-57441B865243}.Release|x86.Deploy.0 = Release|x86
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Assets/AboutAssets.txt b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Assets/AboutAssets.txt
new file mode 100644
index 0000000..5ddf087
--- /dev/null
+++ b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Assets/AboutAssets.txt
@@ -0,0 +1,19 @@
+Any raw assets you want to be deployed with your application can be placed in
+this directory (and child directories) and given a Build Action of "AndroidAsset".
+
+These files will be deployed with you package and will be accessible using Android's
+AssetManager, like this:
+
+public class ReadAsset : Activity
+{
+ protected override void OnCreate (Bundle bundle)
+ {
+ base.OnCreate (bundle);
+
+ InputStream input = Assets.Open ("my_asset.txt");
+ }
+}
+
+Additionally, some Android functions will automatically load asset files:
+
+Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");
diff --git a/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/MainActivity.cs b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/MainActivity.cs
new file mode 100644
index 0000000..304d255
--- /dev/null
+++ b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/MainActivity.cs
@@ -0,0 +1,27 @@
+using System;
+
+using Android.App;
+using Android.Content.PM;
+using Android.Runtime;
+using Android.Views;
+using Android.Widget;
+using Android.OS;
+
+namespace MyTaxiCompany02.Droid
+{
+ [Activity(Label = "MyTaxiCompany02", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
+ public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
+ {
+ protected override void OnCreate(Bundle bundle)
+ {
+ TabLayoutResource = Resource.Layout.Tabbar;
+ ToolbarResource = Resource.Layout.Toolbar;
+
+ base.OnCreate(bundle);
+
+ global::Xamarin.Forms.Forms.Init(this, bundle);
+ LoadApplication(new App());
+ }
+ }
+}
+
diff --git a/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/CoordinateConverter.cs b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/CoordinateConverter.cs
new file mode 100644
index 0000000..9669eda
--- /dev/null
+++ b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/CoordinateConverter.cs
@@ -0,0 +1,22 @@
+using Android.Gms.Maps.Model;
+using MyTaxiCompany02.Models;
+
+namespace MyTaxiCompany02.Droid.Maps
+{
+ public static class CoordinateConverter
+ {
+ public static LatLng ConvertToNative(Geoposition position)
+ {
+ return new LatLng(position.Latitude, position.Longitude);
+ }
+
+ public static Geoposition ConvertToAbstraction(LatLng position)
+ {
+ return new Geoposition
+ {
+ Latitude = position.Latitude,
+ Longitude = position.Longitude
+ };
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/Icons/BaseIcon.cs b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/Icons/BaseIcon.cs
new file mode 100644
index 0000000..71f21dc
--- /dev/null
+++ b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/Icons/BaseIcon.cs
@@ -0,0 +1,16 @@
+using Android.Gms.Maps.Model;
+
+namespace MyTaxiCompany02.Droid.Maps.Icons
+{
+ public abstract class BaseIcon
+ {
+ public MarkerOptions MarkerOptions { get; }
+
+ protected BaseIcon()
+ {
+ MarkerOptions = new MarkerOptions();
+ MarkerOptions.Draggable(false);
+ MarkerOptions.Anchor(0.5f, 0.5f);
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/Icons/CustomerIcon.cs b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/Icons/CustomerIcon.cs
new file mode 100644
index 0000000..d78d5e7
--- /dev/null
+++ b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/Icons/CustomerIcon.cs
@@ -0,0 +1,41 @@
+using Android.Gms.Maps.Model;
+using MyTaxiCompany02.Models;
+
+namespace MyTaxiCompany02.Droid.Maps.Icons
+{
+ public class CustomerIcon : BaseIcon
+ {
+ private const int BusinessResource = Resource.Drawable.business;
+ private const int GroupResource = Resource.Drawable.group;
+ private const int AnonymousResource = Resource.Drawable.anonymous;
+
+ public CustomerIcon(Customer customer)
+ : base()
+ {
+ Customer = customer;
+
+ Initialize();
+ }
+
+ public Customer Customer { get; }
+
+ private void Initialize()
+ {
+ switch (Customer.CustomerCategory)
+ {
+ case CustomerType.Business:
+ var businessIcon = BitmapDescriptorFactory.FromResource(BusinessResource);
+ MarkerOptions.SetIcon(businessIcon);
+ break;
+ case CustomerType.Group:
+ var groupIcon = BitmapDescriptorFactory.FromResource(GroupResource);
+ MarkerOptions.SetIcon(groupIcon);
+ break;
+ default:
+ var anonymousIcon = BitmapDescriptorFactory.FromResource(AnonymousResource);
+ MarkerOptions.SetIcon(anonymousIcon);
+ break;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/MarkerManager.cs b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/MarkerManager.cs
new file mode 100644
index 0000000..24f5cab
--- /dev/null
+++ b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Maps/MarkerManager.cs
@@ -0,0 +1,67 @@
+using System.Collections.Generic;
+using System.Linq;
+using MyTaxiCompany02.Maps;
+using Android.Gms.Maps.Model;
+using Android.Gms.Maps;
+using MyTaxiCompany02.Controls;
+using MyTaxiCompany02.Models;
+using MyTaxiCompany02.Droid.Maps.Icons;
+
+namespace MyTaxiCompany02.Droid.Maps
+{
+ public class MarkerManager : AbstractPushpinManager
+ {
+ private readonly Dictionary _customerPushpinMappings;
+ private GoogleMap _nativeMap;
+ private bool _isUserInteractionEnabled;
+
+ public MarkerManager(GoogleMap nativeMap, CustomMap formsMap)
+ : base(formsMap)
+ {
+ _nativeMap = nativeMap;
+ _customerPushpinMappings = new Dictionary();
+ _isUserInteractionEnabled = true;
+ }
+
+ protected override void AddCustomerToMap(Customer customer)
+ {
+ var customerIcon = new CustomerIcon(customer);
+
+ var markerOptions = customerIcon.MarkerOptions;
+ markerOptions.SetPosition(new LatLng(customer.Latitude, customer.Longitude));
+
+ Marker marker = _nativeMap.AddMarker(markerOptions);
+ _customerPushpinMappings.Add(customer.Id, marker);
+ }
+
+ public override void RemoveAllCustomers()
+ {
+ List allMarkers = _customerPushpinMappings.Select(m => m.Value)
+ .ToList();
+ _customerPushpinMappings.Clear();
+
+ foreach (Marker marker in allMarkers)
+ {
+ marker.Remove();
+ }
+ }
+
+ public override void RemoveCustomers(IEnumerable removedCustomers)
+ {
+ List> entriesToRemove =
+ _customerPushpinMappings.Where(x => removedCustomers.Any(i => i.Id == x.Key))
+ .ToList();
+
+ foreach (KeyValuePair entry in entriesToRemove)
+ {
+ entry.Value.Remove();
+ _customerPushpinMappings.Remove(entry.Key);
+ }
+ }
+
+ private KeyValuePair GetCustomerMappedMarker(Marker marker)
+ {
+ return _customerPushpinMappings.FirstOrDefault(m => m.Value.Id == marker.Id);
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/MyTaxiCompany02.Droid.csproj b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/MyTaxiCompany02.Droid.csproj
new file mode 100644
index 0000000..438b5eb
--- /dev/null
+++ b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/MyTaxiCompany02.Droid.csproj
@@ -0,0 +1,194 @@
+
+
+
+ Debug
+ AnyCPU
+ 8.0.30703
+ 2.0
+ {EC86A3DF-F187-4A95-9C40-5DD95B0B27ED}
+ {EFBA0AD7-5A72-4C68-AF49-83D382785DCF};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
+ Library
+ Properties
+ MyTaxiCompany02.Droid
+ MyTaxiCompany02.Droid
+ 512
+ true
+ Resources\Resource.Designer.cs
+ Off
+ Properties\AndroidManifest.xml
+ true
+ v7.0
+ armeabi,armeabi-v7a,x86
+
+
+
+
+
+
+
+
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+ True
+ None
+
+
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+ False
+ SdkOnly
+
+
+
+ ..\..\packages\Xamarin.Forms.2.3.4.184-pre1\lib\MonoAndroid10\FormsViewGroup.dll
+ True
+
+
+ ..\..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll
+ True
+
+
+ ..\..\packages\Unity.4.0.1\lib\portable-net45+wp80+win8+wpa81+MonoAndroid10+MonoTouch10\Microsoft.Practices.Unity.dll
+ True
+
+
+
+
+
+
+
+
+
+ ..\..\packages\Xamarin.Android.Support.Animated.Vector.Drawable.23.3.0\lib\MonoAndroid403\Xamarin.Android.Support.Animated.Vector.Drawable.dll
+ True
+
+
+ ..\..\packages\Xamarin.Android.Support.Design.23.3.0\lib\MonoAndroid43\Xamarin.Android.Support.Design.dll
+ True
+
+
+ ..\..\packages\Xamarin.Android.Support.v4.23.3.0\lib\MonoAndroid403\Xamarin.Android.Support.v4.dll
+ True
+
+
+ ..\..\packages\Xamarin.Android.Support.v7.AppCompat.23.3.0\lib\MonoAndroid403\Xamarin.Android.Support.v7.AppCompat.dll
+ True
+
+
+ ..\..\packages\Xamarin.Android.Support.v7.CardView.23.3.0\lib\MonoAndroid403\Xamarin.Android.Support.v7.CardView.dll
+ True
+
+
+ ..\..\packages\Xamarin.Android.Support.v7.MediaRouter.23.3.0\lib\MonoAndroid403\Xamarin.Android.Support.v7.MediaRouter.dll
+ True
+
+
+ ..\..\packages\Xamarin.Android.Support.v7.RecyclerView.23.3.0\lib\MonoAndroid403\Xamarin.Android.Support.v7.RecyclerView.dll
+ True
+
+
+ ..\..\packages\Xamarin.Android.Support.Vector.Drawable.23.3.0\lib\MonoAndroid403\Xamarin.Android.Support.Vector.Drawable.dll
+ True
+
+
+ ..\..\packages\Xamarin.Forms.2.3.4.184-pre1\lib\MonoAndroid10\Xamarin.Forms.Core.dll
+ True
+
+
+ ..\..\packages\Xamarin.Forms.Maps.2.3.4.184-pre1\lib\MonoAndroid10\Xamarin.Forms.Maps.dll
+ True
+
+
+ ..\..\packages\Xamarin.Forms.Maps.2.3.4.184-pre1\lib\MonoAndroid10\Xamarin.Forms.Maps.Android.dll
+ True
+
+
+ ..\..\packages\Xamarin.Forms.2.3.4.184-pre1\lib\MonoAndroid10\Xamarin.Forms.Platform.dll
+ True
+
+
+ ..\..\packages\Xamarin.Forms.2.3.4.184-pre1\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.dll
+ True
+
+
+ ..\..\packages\Xamarin.Forms.2.3.4.184-pre1\lib\MonoAndroid10\Xamarin.Forms.Xaml.dll
+ True
+
+
+ ..\..\packages\Xamarin.GooglePlayServices.Base.29.0.0.1\lib\MonoAndroid41\Xamarin.GooglePlayServices.Base.dll
+ True
+
+
+ ..\..\packages\Xamarin.GooglePlayServices.Basement.29.0.0.1\lib\MonoAndroid41\Xamarin.GooglePlayServices.Basement.dll
+ True
+
+
+ ..\..\packages\Xamarin.GooglePlayServices.Maps.29.0.0.1\lib\MonoAndroid41\Xamarin.GooglePlayServices.Maps.dll
+ True
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {73a2f47a-9821-4498-b35d-9476b0a03b55}
+ MyTaxiCompany02
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Este proyecto hace referencia a los paquetes NuGet que faltan en este equipo. Use la restauración de paquetes NuGet para descargarlos. Para obtener más información, consulte http://go.microsoft.com/fwlink/?LinkID=322105. El archivo que falta es {0}.
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Properties/AndroidManifest.xml b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Properties/AndroidManifest.xml
new file mode 100644
index 0000000..9f78082
--- /dev/null
+++ b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Properties/AndroidManifest.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Properties/AssemblyInfo.cs b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..af5163c
--- /dev/null
+++ b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Properties/AssemblyInfo.cs
@@ -0,0 +1,34 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using Android.App;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("MyTaxiCompany02.Droid")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("MyTaxiCompany02.Droid")]
+[assembly: AssemblyCopyright("Copyright © 2014")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+[assembly: ComVisible(false)]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
+
+// Add some common permissions, these can be removed if not needed
+[assembly: UsesPermission(Android.Manifest.Permission.Internet)]
+[assembly: UsesPermission(Android.Manifest.Permission.WriteExternalStorage)]
diff --git a/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Renderers/CustomMapRenderer.cs b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Renderers/CustomMapRenderer.cs
new file mode 100644
index 0000000..3edefda
--- /dev/null
+++ b/src/MyTaxiCompany02/MyTaxiCompany02/MyTaxiCompany02.Droid/Renderers/CustomMapRenderer.cs
@@ -0,0 +1,75 @@
+using MyTaxiCompany02.Droid.Renderers;
+using MyTaxiCompany02.Controls;
+using Xamarin.Forms;
+using Android.Gms.Maps;
+using Xamarin.Forms.Maps.Android;
+using System;
+using System.ComponentModel;
+using Xamarin.Forms.Platform.Android;
+using Xamarin.Forms.Maps;
+using MyTaxiCompany02.Maps;
+using MyTaxiCompany02.Droid.Maps;
+
+[assembly: ExportRenderer(typeof(CustomMap), typeof(CustomMapRenderer))]
+namespace MyTaxiCompany02.Droid.Renderers
+{
+ public class CustomMapRenderer : MapRenderer, IOnMapReadyCallback
+ {
+ private MapView _androidMapView;
+ private GoogleMap _nativeMap;
+ private CustomMap _customMap;
+ private MapManager _mapManager;
+
+ protected override void OnElementChanged(ElementChangedEventArgs