3.0.267 merged
|
@ -10,7 +10,7 @@
|
||||||
<OutputType>Library</OutputType>
|
<OutputType>Library</OutputType>
|
||||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
<RootNamespace>TINK.Droid</RootNamespace>
|
<RootNamespace>TINK.Droid</RootNamespace>
|
||||||
<AssemblyName>TINK.Android</AssemblyName>
|
<AssemblyName>LastenradBayern.Android</AssemblyName>
|
||||||
<FileAlignment>512</FileAlignment>
|
<FileAlignment>512</FileAlignment>
|
||||||
<AndroidApplication>true</AndroidApplication>
|
<AndroidApplication>true</AndroidApplication>
|
||||||
<AndroidResgenFile>Resources\Resource.Designer.cs</AndroidResgenFile>
|
<AndroidResgenFile>Resources\Resource.Designer.cs</AndroidResgenFile>
|
||||||
|
@ -60,11 +60,13 @@
|
||||||
<BundleAssemblies>false</BundleAssemblies>
|
<BundleAssemblies>false</BundleAssemblies>
|
||||||
<AndroidSupportedAbis>armeabi-v7a;x86;x86_64;arm64-v8a</AndroidSupportedAbis>
|
<AndroidSupportedAbis>armeabi-v7a;x86;x86_64;arm64-v8a</AndroidSupportedAbis>
|
||||||
<MandroidI18n />
|
<MandroidI18n />
|
||||||
<AndroidPackageFormat>apk</AndroidPackageFormat>
|
<AndroidPackageFormat>aab</AndroidPackageFormat>
|
||||||
|
<AndroidUseAapt2>true</AndroidUseAapt2>
|
||||||
|
<AndroidCreatePackagePerAbi>false</AndroidCreatePackagePerAbi>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
||||||
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.3" />
|
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.4" />
|
||||||
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
||||||
<PackageReference Include="MonkeyCache">
|
<PackageReference Include="MonkeyCache">
|
||||||
<Version>1.5.2</Version>
|
<Version>1.5.2</Version>
|
||||||
|
@ -163,34 +165,37 @@
|
||||||
<PackageReference Include="Xamarin.Android.Support.v7.RecyclerView" Version="28.0.0.3" />
|
<PackageReference Include="Xamarin.Android.Support.v7.RecyclerView" Version="28.0.0.3" />
|
||||||
<PackageReference Include="Xamarin.Android.Support.Vector.Drawable" Version="28.0.0.3" />
|
<PackageReference Include="Xamarin.Android.Support.Vector.Drawable" Version="28.0.0.3" />
|
||||||
<PackageReference Include="Xamarin.AndroidX.Core">
|
<PackageReference Include="Xamarin.AndroidX.Core">
|
||||||
<Version>1.6.0.1</Version>
|
<Version>1.6.0.3</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.AndroidX.MediaRouter">
|
<PackageReference Include="Xamarin.AndroidX.MediaRouter">
|
||||||
<Version>1.2.5</Version>
|
<Version>1.2.5.2</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.AndroidX.Palette">
|
<PackageReference Include="Xamarin.AndroidX.Palette">
|
||||||
<Version>1.0.0.8</Version>
|
<Version>1.0.0.10</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.AndroidX.RecyclerView">
|
<PackageReference Include="Xamarin.AndroidX.RecyclerView">
|
||||||
<Version>1.2.1.1</Version>
|
<Version>1.2.1.3</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
||||||
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
||||||
<PackageReference Include="Xamarin.CommunityToolkit">
|
<PackageReference Include="Xamarin.CommunityToolkit">
|
||||||
<Version>1.2.0</Version>
|
<Version>1.3.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Essentials">
|
<PackageReference Include="Xamarin.Essentials">
|
||||||
<Version>1.7.0</Version>
|
<Version>1.7.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms" Version="5.0.0.2125" />
|
<PackageReference Include="Xamarin.Forms" Version="5.0.0.2196" />
|
||||||
|
<PackageReference Include="Xamarin.Forms.AppLinks">
|
||||||
|
<Version>5.0.0.2244</Version>
|
||||||
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms.GoogleMaps">
|
<PackageReference Include="Xamarin.Forms.GoogleMaps">
|
||||||
<Version>3.3.0</Version>
|
<Version>3.3.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms.GoogleMaps.Bindings" Version="3.0.0" />
|
<PackageReference Include="Xamarin.Forms.GoogleMaps.Bindings" Version="3.0.0" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Base" Version="117.6.0" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Base" Version="117.6.0.1" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Basement" Version="117.6.0.1" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Basement" Version="117.6.0.2" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Maps" Version="117.0.1" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Maps" Version="117.0.1.1" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Tasks" Version="117.2.1" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Tasks" Version="117.2.1.1" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Mono.Android" />
|
<Reference Include="Mono.Android" />
|
||||||
|
@ -218,6 +223,7 @@
|
||||||
<None Include="app.config">
|
<None Include="app.config">
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</None>
|
</None>
|
||||||
|
<GoogleServicesJson Include="google-services.json" />
|
||||||
<None Include="Resources\AboutResources.txt" />
|
<None Include="Resources\AboutResources.txt" />
|
||||||
<None Include="Assets\AboutAssets.txt" />
|
<None Include="Assets\AboutAssets.txt" />
|
||||||
<EmbeddedResource Include="Resources\Font Awesome 5 Free-Solid-900.otf" />
|
<EmbeddedResource Include="Resources\Font Awesome 5 Free-Solid-900.otf" />
|
||||||
|
@ -646,24 +652,6 @@
|
||||||
<Generator>MSBuild:UpdateGeneratedFiles</Generator>
|
<Generator>MSBuild:UpdateGeneratedFiles</Generator>
|
||||||
</AndroidResource>
|
</AndroidResource>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable-hdpi\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable-mdpi\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable-xhdpi\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable-xxhdpi\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable-xxxhdpi\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="..\TINK\LastenradBayern.projitems" Label="Shared" Condition="Exists('..\TINK\LastenradBayern.projitems')" />
|
<Import Project="..\TINK\LastenradBayern.projitems" Label="Shared" Condition="Exists('..\TINK\LastenradBayern.projitems')" />
|
||||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
|
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
|
||||||
<ProjectExtensions>
|
<ProjectExtensions>
|
||||||
|
|
|
@ -5,11 +5,28 @@ using Android.OS;
|
||||||
using Android.Content;
|
using Android.Content;
|
||||||
using Java.Interop;
|
using Java.Interop;
|
||||||
using Plugin.Permissions;
|
using Plugin.Permissions;
|
||||||
|
using Xamarin.Forms.Platform.Android.AppLinks;
|
||||||
|
using Firebase;
|
||||||
|
|
||||||
namespace TINK.Droid
|
namespace TINK.Droid
|
||||||
{
|
{
|
||||||
[Activity (Label = "Sharee", Icon = "@drawable/sharee", Theme="@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
|
[Activity (Label = "LastenradBayern", Icon = "@drawable/sharee", Theme="@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
|
||||||
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
|
|
||||||
|
[IntentFilter(new[] { Intent.ActionView },
|
||||||
|
Categories = new[] { Intent.ActionView, Intent.CategoryBrowsable, Intent.CategoryDefault },
|
||||||
|
DataScheme = "https",
|
||||||
|
DataHost = "sharee.bike",
|
||||||
|
DataPathPrefix = "/lastenrad",
|
||||||
|
AutoVerify = true)]
|
||||||
|
|
||||||
|
[IntentFilter(new[] { Intent.ActionView },
|
||||||
|
Categories = new[] { Intent.ActionView, Intent.CategoryBrowsable, Intent.CategoryDefault },
|
||||||
|
DataScheme = "http",
|
||||||
|
DataHost = "sharee.bike",
|
||||||
|
DataPathPrefix = "/lastenrad",
|
||||||
|
AutoVerify = true)]
|
||||||
|
|
||||||
|
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
|
||||||
{
|
{
|
||||||
protected override void OnCreate (Bundle bundle)
|
protected override void OnCreate (Bundle bundle)
|
||||||
{
|
{
|
||||||
|
@ -20,6 +37,9 @@ namespace TINK.Droid
|
||||||
|
|
||||||
global::Xamarin.Forms.Forms.Init (this, bundle);
|
global::Xamarin.Forms.Forms.Init (this, bundle);
|
||||||
|
|
||||||
|
FirebaseApp.InitializeApp(this);
|
||||||
|
AndroidAppLinks.Init(this);
|
||||||
|
|
||||||
// Initialize xamarin.essentials, see https://docs.microsoft.com/en-us/xamarin/essentials/get-started?tabs=macos%2Candroid.
|
// Initialize xamarin.essentials, see https://docs.microsoft.com/en-us/xamarin/essentials/get-started?tabs=macos%2Candroid.
|
||||||
Xamarin.Essentials.Platform.Init(this, bundle);
|
Xamarin.Essentials.Platform.Init(this, bundle);
|
||||||
|
|
||||||
|
@ -51,7 +71,7 @@ namespace TINK.Droid
|
||||||
if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Essentials.Permissions))
|
if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Essentials.Permissions))
|
||||||
{
|
{
|
||||||
Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
|
Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
|
||||||
}
|
}
|
||||||
else if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Plugin.Permissions))
|
else if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Plugin.Permissions))
|
||||||
{
|
{
|
||||||
// Bug in 3.0.244 and earlier versions of sharee.bike app: Call of PermissionsImplementation.Current.OnRequestedPermission result was missing.
|
// Bug in 3.0.244 and earlier versions of sharee.bike app: Call of PermissionsImplementation.Current.OnRequestedPermission result was missing.
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="internalOnly" package="com.TeilRad.LastenradBayern" android:versionName="3.0.257" android:versionCode="257">
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="internalOnly" package="com.TeilRad.LastenradBayern" android:versionName="3.0.267" android:versionCode="267">
|
||||||
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="30" />
|
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="30" />
|
||||||
<!-- Google Maps related permissions -->
|
<!-- Google Maps related permissions -->
|
||||||
<permission android:name="com.ecs.google.maps.v2.actionbarsherlock.permission.MAPS_RECEIVE" android:protectionLevel="signature" />
|
<!-- Permission to receive remote notifications from Google Play Services -->
|
||||||
|
<!-- Notice here that we have the package name of our application as a prefix on the permissions. -->
|
||||||
|
<permission android:name="com.TeilRad.LastenradBayern.permission.MAPS_RECEIVE" android:protectionLevel="signature" />
|
||||||
<!-- Network connectivity permissions -->
|
<!-- Network connectivity permissions -->
|
||||||
<!-- Access Google based webservices -->
|
<!-- Access Google based webservices -->
|
||||||
<!-- External storage for caching. -->
|
<!-- External storage for caching. -->
|
||||||
|
@ -16,5 +18,5 @@
|
||||||
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
|
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
|
||||||
<uses-feature android:name="android.hardware.bluetooth_le" android:required="true" />
|
<uses-feature android:name="android.hardware.bluetooth_le" android:required="true" />
|
||||||
<application android:icon="@drawable/sharee" android:label="LastenradBayern" android:allowBackup="false"></application>
|
<application android:icon="@drawable/sharee" android:label="LastenradBayern" android:allowBackup="false"></application>
|
||||||
<meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="000000000000000000000000000000000000000" />
|
<meta-data android:name="com.google.android.geo.API_KEY" android:value="000000000000000000000000000000000000000" />
|
||||||
</manifest>
|
</manifest>
|
|
@ -1,4 +1,4 @@
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Runtime.CompilerServices;
|
using System.Runtime.CompilerServices;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
using Android.App;
|
using Android.App;
|
||||||
|
@ -7,11 +7,11 @@ using Xamarin.Forms;
|
||||||
// General Information about an assembly is controlled through the following
|
// General Information about an assembly is controlled through the following
|
||||||
// set of attributes. Change these attribute values to modify the information
|
// set of attributes. Change these attribute values to modify the information
|
||||||
// associated with an assembly.
|
// associated with an assembly.
|
||||||
[assembly: AssemblyTitle("TINK.Android")]
|
[assembly: AssemblyTitle("LastenradBayern.Android")]
|
||||||
[assembly: AssemblyDescription("")]
|
[assembly: AssemblyDescription("")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCompany("")]
|
[assembly: AssemblyCompany("")]
|
||||||
[assembly: AssemblyProduct("TINK.Android")]
|
[assembly: AssemblyProduct("LastenradBayern.Android")]
|
||||||
[assembly: AssemblyCopyright("Copyright © 2014")]
|
[assembly: AssemblyCopyright("Copyright © 2014")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
|
@ -40,6 +40,6 @@ using Xamarin.Forms;
|
||||||
[assembly: Application(Debuggable = false)]
|
[assembly: Application(Debuggable = false)]
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
[assembly: MetaData("com.google.android.maps.v2.API_KEY", Value = "000000000000000000000000000000000000000")]
|
[assembly: MetaData("com.google.android.geo.API_KEY", Value = "000000000000000000000000000000000000000")]
|
||||||
|
|
||||||
[assembly: ExportFont("Font Awesome 5 Free-Solid-900.otf", Alias = "FA-S")]
|
[assembly: ExportFont("Font Awesome 5 Free-Solid-900.otf", Alias = "FA-S")]
|
||||||
|
|
2165
LastenradBayern/TINK.Android/Resources/Resource.Designer.cs
generated
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 7.7 KiB |
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 10 KiB |
|
@ -1,8 +1,4 @@
|
||||||
using System;
|
using Foundation;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
|
|
||||||
using Foundation;
|
|
||||||
using UIKit;
|
using UIKit;
|
||||||
using Xamarin.Forms;
|
using Xamarin.Forms;
|
||||||
|
|
||||||
|
|
|
@ -6,5 +6,9 @@
|
||||||
<array>
|
<array>
|
||||||
<string>$(AppIdentifierPrefix)com.TeilRad.sharee.bike</string>
|
<string>$(AppIdentifierPrefix)com.TeilRad.sharee.bike</string>
|
||||||
</array>
|
</array>
|
||||||
|
<key>com.apple.developer.associated-domains</key>
|
||||||
|
<array>
|
||||||
|
<string>applinks:sharee.bike</string>
|
||||||
|
</array>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
<plist version="1.0">
|
<plist version="1.0">
|
||||||
<dict>
|
<dict>
|
||||||
|
@ -30,6 +30,8 @@
|
||||||
<string>Media.xcassets/LaunchImages.launchimage</string>
|
<string>Media.xcassets/LaunchImages.launchimage</string>
|
||||||
<key>CFBundleName</key>
|
<key>CFBundleName</key>
|
||||||
<string>LastenradBayern</string>
|
<string>LastenradBayern</string>
|
||||||
|
<key>XSAppIconAssets</key>
|
||||||
|
<string>Media.xcassets/AppIcons.appiconset</string>
|
||||||
<key>NSBluetoothAlwaysUsageDescription</key>
|
<key>NSBluetoothAlwaysUsageDescription</key>
|
||||||
<string>Is required to communicate with Bluetooth lock.</string>
|
<string>Is required to communicate with Bluetooth lock.</string>
|
||||||
<key>NSBluetoothPeripheralUsageDescription</key>
|
<key>NSBluetoothPeripheralUsageDescription</key>
|
||||||
|
@ -47,10 +49,8 @@
|
||||||
<key>CFBundleDisplayName</key>
|
<key>CFBundleDisplayName</key>
|
||||||
<string>LastenradBayern</string>
|
<string>LastenradBayern</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>257</string>
|
<string>267</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>3.0.257</string>
|
<string>3.0.267</string>
|
||||||
<key>XSAppIconAssets</key>
|
|
||||||
<string>Media.xcassets/AppIcons.appiconset</string>
|
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
<OutputType>Exe</OutputType>
|
<OutputType>Exe</OutputType>
|
||||||
<RootNamespace>TINK.iOS</RootNamespace>
|
<RootNamespace>TINK.iOS</RootNamespace>
|
||||||
<IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
|
<IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
|
||||||
<AssemblyName>TINK.iOS</AssemblyName>
|
<AssemblyName>LastenradBayern.iOS</AssemblyName>
|
||||||
<NuGetPackageImportStamp>
|
<NuGetPackageImportStamp>
|
||||||
</NuGetPackageImportStamp>
|
</NuGetPackageImportStamp>
|
||||||
<ReleaseVersion>3.0</ReleaseVersion>
|
<ReleaseVersion>3.0</ReleaseVersion>
|
||||||
|
@ -53,12 +53,11 @@
|
||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
<ConsolePause>false</ConsolePause>
|
<ConsolePause>false</ConsolePause>
|
||||||
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
||||||
<CodesignKey>Apple Development: Oliver Hauff (8SZ7J9P24J)</CodesignKey>
|
<CodesignKey>iPhone Developer</CodesignKey>
|
||||||
<MtouchDebug>true</MtouchDebug>
|
<MtouchDebug>true</MtouchDebug>
|
||||||
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
||||||
<CodesignProvision>VS: WildCard Development</CodesignProvision>
|
<MtouchLink>None</MtouchLink>
|
||||||
<MtouchLink>SdkOnly</MtouchLink>
|
<MtouchInterpreter>-all</MtouchInterpreter>
|
||||||
<AssemblyName>LastenradBayern.iOS</AssemblyName>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
|
||||||
<DebugType>none</DebugType>
|
<DebugType>none</DebugType>
|
||||||
|
@ -69,15 +68,14 @@
|
||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
||||||
<ConsolePause>false</ConsolePause>
|
<ConsolePause>false</ConsolePause>
|
||||||
<CodesignKey>Apple Development: Oliver Hauff (8SZ7J9P24J)</CodesignKey>
|
<CodesignKey>Apple Distribution: TeilRad GmbH (LXJD6URCHR)</CodesignKey>
|
||||||
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
||||||
<CodesignProvision>VS: WildCard Development</CodesignProvision>
|
<CodesignProvision>LastenradBayern to App Store 3</CodesignProvision>
|
||||||
<IpaIncludeArtwork>
|
<IpaIncludeArtwork>
|
||||||
</IpaIncludeArtwork>
|
</IpaIncludeArtwork>
|
||||||
<CrashReportingApiKey>
|
<CrashReportingApiKey>
|
||||||
</CrashReportingApiKey>
|
</CrashReportingApiKey>
|
||||||
<MtouchLink>SdkOnly</MtouchLink>
|
<MtouchLink>SdkOnly</MtouchLink>
|
||||||
<AssemblyName>LastenradBayern.iOS</AssemblyName>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Ad-Hoc|iPhone' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Ad-Hoc|iPhone' ">
|
||||||
<DebugType>none</DebugType>
|
<DebugType>none</DebugType>
|
||||||
|
@ -95,7 +93,6 @@
|
||||||
<MtouchNoSymbolStrip>
|
<MtouchNoSymbolStrip>
|
||||||
</MtouchNoSymbolStrip>
|
</MtouchNoSymbolStrip>
|
||||||
<MtouchLink>SdkOnly</MtouchLink>
|
<MtouchLink>SdkOnly</MtouchLink>
|
||||||
<AssemblyName>LastenradBayern.iOS</AssemblyName>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'AppStore|iPhone' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'AppStore|iPhone' ">
|
||||||
<DebugType>none</DebugType>
|
<DebugType>none</DebugType>
|
||||||
|
@ -110,7 +107,6 @@
|
||||||
<CodesignKey>Apple Development: Oliver Hauff (8SZ7J9P24J)</CodesignKey>
|
<CodesignKey>Apple Development: Oliver Hauff (8SZ7J9P24J)</CodesignKey>
|
||||||
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
||||||
<MtouchLink>SdkOnly</MtouchLink>
|
<MtouchLink>SdkOnly</MtouchLink>
|
||||||
<AssemblyName>LastenradBayern.iOS</AssemblyName>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' ">
|
<PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' ">
|
||||||
<AppExtensionDebugBundleId />
|
<AppExtensionDebugBundleId />
|
||||||
|
@ -118,7 +114,7 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.Bcl.Build" Version="1.0.21" />
|
<PackageReference Include="Microsoft.Bcl.Build" Version="1.0.21" />
|
||||||
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
||||||
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.3" />
|
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.4" />
|
||||||
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
||||||
<PackageReference Include="MonkeyCache">
|
<PackageReference Include="MonkeyCache">
|
||||||
<Version>1.5.2</Version>
|
<Version>1.5.2</Version>
|
||||||
|
@ -195,7 +191,7 @@
|
||||||
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
||||||
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
||||||
<PackageReference Include="Xamarin.CommunityToolkit">
|
<PackageReference Include="Xamarin.CommunityToolkit">
|
||||||
<Version>1.2.0</Version>
|
<Version>1.3.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Essentials">
|
<PackageReference Include="Xamarin.Essentials">
|
||||||
<Version>1.7.0</Version>
|
<Version>1.7.0</Version>
|
||||||
|
@ -218,7 +214,7 @@
|
||||||
<Version>0.7.104</Version>
|
<Version>0.7.104</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms">
|
<PackageReference Include="Xamarin.Forms">
|
||||||
<Version>5.0.0.2125</Version>
|
<Version>5.0.0.2196</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
@ -1425,30 +1421,58 @@
|
||||||
<ImageAsset Include="Media.xcassets\Open_Red.imageset\StationMarkerOpenRed.pdf">
|
<ImageAsset Include="Media.xcassets\Open_Red.imageset\StationMarkerOpenRed.pdf">
|
||||||
<Visible>false</Visible>
|
<Visible>false</Visible>
|
||||||
</ImageAsset>
|
</ImageAsset>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\40.png" />
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-40.png">
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\60.png" />
|
<Visible>false</Visible>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\58.png" />
|
</ImageAsset>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\87.png" />
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-60.png">
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\80.png" />
|
<Visible>false</Visible>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\120.png" />
|
</ImageAsset>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\120-1.png" />
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-58.png">
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\180.png" />
|
<Visible>false</Visible>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\20.png" />
|
</ImageAsset>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\40-1.png" />
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-87.png">
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\29.png" />
|
<Visible>false</Visible>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\58-1.png" />
|
</ImageAsset>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\40-2.png" />
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-80.png">
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\80-1.png" />
|
<Visible>false</Visible>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\76.png" />
|
</ImageAsset>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\152.png" />
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-120.png">
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\167.png" />
|
<Visible>false</Visible>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\1024.png" />
|
</ImageAsset>
|
||||||
<ImageAsset Include="Media.xcassets\LaunchImage.launchimage\Contents.json" />
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-120-1.png">
|
||||||
<ImageAsset Include="Media.xcassets\LaunchImage.launchimage\Default.png" />
|
<Visible>false</Visible>
|
||||||
<ImageAsset Include="Media.xcassets\LaunchImage.launchimage\Default%402x.png" />
|
</ImageAsset>
|
||||||
<ImageAsset Include="Media.xcassets\LaunchImage.launchimage\Default-568h%402x.png" />
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-180.png">
|
||||||
<ImageAsset Include="Media.xcassets\LaunchImage.launchimage\Default-Portrait.png" />
|
<Visible>false</Visible>
|
||||||
<ImageAsset Include="Media.xcassets\LaunchImage.launchimage\Default-Portrait%402x.png" />
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-20.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-40-1.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-29.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-58-1.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-40-2.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-80-1.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-76.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-152.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-167.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\iTunesArtwork%402x.png" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Folder Include="Media.xcassets\01_Blue.imageset\" />
|
<Folder Include="Media.xcassets\01_Blue.imageset\" />
|
||||||
|
@ -1571,11 +1595,11 @@
|
||||||
<Folder Include="Media.xcassets\30_Green.imageset\" />
|
<Folder Include="Media.xcassets\30_Green.imageset\" />
|
||||||
<Folder Include="Media.xcassets\30_LightBlue.imageset\" />
|
<Folder Include="Media.xcassets\30_LightBlue.imageset\" />
|
||||||
<Folder Include="Media.xcassets\30_Red.imageset\" />
|
<Folder Include="Media.xcassets\30_Red.imageset\" />
|
||||||
|
<Folder Include="Media.xcassets\AppIcon-LastenradBayern.appiconset\" />
|
||||||
<Folder Include="Media.xcassets\Open_Blue.imageset\" />
|
<Folder Include="Media.xcassets\Open_Blue.imageset\" />
|
||||||
<Folder Include="Media.xcassets\Open_Green.imageset\" />
|
<Folder Include="Media.xcassets\Open_Green.imageset\" />
|
||||||
<Folder Include="Media.xcassets\Open_LightBlue.imageset\" />
|
<Folder Include="Media.xcassets\Open_LightBlue.imageset\" />
|
||||||
<Folder Include="Media.xcassets\Open_Red.imageset\" />
|
<Folder Include="Media.xcassets\Open_Red.imageset\" />
|
||||||
<Folder Include="Media.xcassets\AppIcon-LastenradBayern.appiconset\" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="..\TINK\LastenradBayern.projitems" Label="Shared" Condition="Exists('..\TINK\LastenradBayern.projitems')" />
|
<Import Project="..\TINK\LastenradBayern.projitems" Label="Shared" Condition="Exists('..\TINK\LastenradBayern.projitems')" />
|
||||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
||||||
|
|
|
@ -1,109 +1,109 @@
|
||||||
{
|
{
|
||||||
"images": [
|
"images": [
|
||||||
{
|
{
|
||||||
"filename": "40.png",
|
"filename": "Icon-40.png",
|
||||||
"size": "20x20",
|
"size": "20x20",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"idiom": "iphone"
|
"idiom": "iphone"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "60.png",
|
"filename": "Icon-60.png",
|
||||||
"size": "20x20",
|
"size": "20x20",
|
||||||
"scale": "3x",
|
"scale": "3x",
|
||||||
"idiom": "iphone"
|
"idiom": "iphone"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "58.png",
|
"filename": "Icon-58.png",
|
||||||
"size": "29x29",
|
"size": "29x29",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"idiom": "iphone"
|
"idiom": "iphone"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "87.png",
|
"filename": "Icon-87.png",
|
||||||
"size": "29x29",
|
"size": "29x29",
|
||||||
"scale": "3x",
|
"scale": "3x",
|
||||||
"idiom": "iphone"
|
"idiom": "iphone"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "80.png",
|
"filename": "Icon-80.png",
|
||||||
"size": "40x40",
|
"size": "40x40",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"idiom": "iphone"
|
"idiom": "iphone"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "120.png",
|
"filename": "Icon-120.png",
|
||||||
"size": "40x40",
|
"size": "40x40",
|
||||||
"scale": "3x",
|
"scale": "3x",
|
||||||
"idiom": "iphone"
|
"idiom": "iphone"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "120-1.png",
|
"filename": "Icon-120-1.png",
|
||||||
"size": "60x60",
|
"size": "60x60",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"idiom": "iphone"
|
"idiom": "iphone"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "180.png",
|
"filename": "Icon-180.png",
|
||||||
"size": "60x60",
|
"size": "60x60",
|
||||||
"scale": "3x",
|
"scale": "3x",
|
||||||
"idiom": "iphone"
|
"idiom": "iphone"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "20.png",
|
"filename": "Icon-20.png",
|
||||||
"size": "20x20",
|
"size": "20x20",
|
||||||
"scale": "1x",
|
"scale": "1x",
|
||||||
"idiom": "ipad"
|
"idiom": "ipad"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "40-1.png",
|
"filename": "Icon-40-1.png",
|
||||||
"size": "20x20",
|
"size": "20x20",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"idiom": "ipad"
|
"idiom": "ipad"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "29.png",
|
"filename": "Icon-29.png",
|
||||||
"size": "29x29",
|
"size": "29x29",
|
||||||
"scale": "1x",
|
"scale": "1x",
|
||||||
"idiom": "ipad"
|
"idiom": "ipad"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "58-1.png",
|
"filename": "Icon-58-1.png",
|
||||||
"size": "29x29",
|
"size": "29x29",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"idiom": "ipad"
|
"idiom": "ipad"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "40-2.png",
|
"filename": "Icon-40-2.png",
|
||||||
"size": "40x40",
|
"size": "40x40",
|
||||||
"scale": "1x",
|
"scale": "1x",
|
||||||
"idiom": "ipad"
|
"idiom": "ipad"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "80-1.png",
|
"filename": "Icon-80-1.png",
|
||||||
"size": "40x40",
|
"size": "40x40",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"idiom": "ipad"
|
"idiom": "ipad"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "167.png",
|
"filename": "Icon-167.png",
|
||||||
"size": "83.5x83.5",
|
"size": "83.5x83.5",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"idiom": "ipad"
|
"idiom": "ipad"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "76.png",
|
"filename": "Icon-76.png",
|
||||||
"size": "76x76",
|
"size": "76x76",
|
||||||
"scale": "1x",
|
"scale": "1x",
|
||||||
"idiom": "ipad"
|
"idiom": "ipad"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "152.png",
|
"filename": "Icon-152.png",
|
||||||
"size": "76x76",
|
"size": "76x76",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"idiom": "ipad"
|
"idiom": "ipad"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename": "1024.png",
|
"filename": "iTunesArtwork@2x.png",
|
||||||
"size": "1024x1024",
|
"size": "1024x1024",
|
||||||
"scale": "1x",
|
"scale": "1x",
|
||||||
"idiom": "ios-marketing"
|
"idiom": "ios-marketing"
|
||||||
|
|
|
@ -5,11 +5,11 @@ using Xamarin.Forms;
|
||||||
// General Information about an assembly is controlled through the following
|
// General Information about an assembly is controlled through the following
|
||||||
// set of attributes. Change these attribute values to modify the information
|
// set of attributes. Change these attribute values to modify the information
|
||||||
// associated with an assembly.
|
// associated with an assembly.
|
||||||
[assembly: AssemblyTitle("TINK.iOS")]
|
[assembly: AssemblyTitle("LastenradBayern.iOS")]
|
||||||
[assembly: AssemblyDescription("")]
|
[assembly: AssemblyDescription("")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCompany("")]
|
[assembly: AssemblyCompany("")]
|
||||||
[assembly: AssemblyProduct("TINK.iOS")]
|
[assembly: AssemblyProduct("LastenradBayern.iOS")]
|
||||||
[assembly: AssemblyCopyright("Copyright © 2020")]
|
[assembly: AssemblyCopyright("Copyright © 2020")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 10 KiB |
|
@ -21,7 +21,8 @@
|
||||||
<rect key="contentStretch" x="0.0" y="0.0" width="0.0" height="0.0"/>
|
<rect key="contentStretch" x="0.0" y="0.0" width="0.0" height="0.0"/>
|
||||||
</imageView>
|
</imageView>
|
||||||
</subviews>
|
</subviews>
|
||||||
<color key="backgroundColor" red="0.20392156862745098" green="0.4983606557377049180327868852459" blue="0.5016393442622950819672131147541" alpha="1" colorSpace="calibratedRGB"/>
|
<!--Color # -->
|
||||||
|
<color key="backgroundColor" red="0.0" green="0.596078431372549" blue="0,6" alpha="1" colorSpace="calibratedRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstItem="23" firstAttribute="centerY" secondItem="yd7-JS-zBw" secondAttribute="centerY" priority="1" id="39"/>
|
<constraint firstItem="23" firstAttribute="centerY" secondItem="yd7-JS-zBw" secondAttribute="centerY" priority="1" id="39"/>
|
||||||
<constraint firstItem="23" firstAttribute="centerX" secondItem="yd7-JS-zBw" secondAttribute="centerX" priority="1" id="41"/>
|
<constraint firstItem="23" firstAttribute="centerX" secondItem="yd7-JS-zBw" secondAttribute="centerX" priority="1" id="41"/>
|
||||||
|
|
|
@ -83,8 +83,8 @@ namespace TINK
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
settings = new Model.Settings.Settings(
|
settings = new Model.Settings.Settings(
|
||||||
JsonSettingsDictionary.GetGroupFilterMapPage(settingsJSON),
|
null, // Turn off filtering for LastenradBayern- context
|
||||||
JsonSettingsDictionary.GetGoupFilterSettings(settingsJSON),
|
null, // Turn off filtering for LastenradBayern- context
|
||||||
JsonSettingsDictionary.GetCopriHostUri(settingsJSON),
|
JsonSettingsDictionary.GetCopriHostUri(settingsJSON),
|
||||||
JsonSettingsDictionary.GetPollingParameters(settingsJSON),
|
JsonSettingsDictionary.GetPollingParameters(settingsJSON),
|
||||||
JsonSettingsDictionary.GetMinimumLoggingLevel(settingsJSON),
|
JsonSettingsDictionary.GetMinimumLoggingLevel(settingsJSON),
|
||||||
|
@ -94,6 +94,7 @@ namespace TINK
|
||||||
JsonSettingsDictionary.GetConnectTimeout(settingsJSON),
|
JsonSettingsDictionary.GetConnectTimeout(settingsJSON),
|
||||||
JsonSettingsDictionary.GetActiveGeolocationService(settingsJSON),
|
JsonSettingsDictionary.GetActiveGeolocationService(settingsJSON),
|
||||||
JsonSettingsDictionary.GetCenterMapToCurrentLocation(settingsJSON),
|
JsonSettingsDictionary.GetCenterMapToCurrentLocation(settingsJSON),
|
||||||
|
Xamarin.Forms.GoogleMaps.MapSpan.FromCenterAndRadius(new Xamarin.Forms.GoogleMaps.Position(49.30881083492271, 11.358449625922889), Xamarin.Forms.GoogleMaps.Distance.FromKilometers(2.9)),
|
||||||
JsonSettingsDictionary.GetLogToExternalFolder(settingsJSON),
|
JsonSettingsDictionary.GetLogToExternalFolder(settingsJSON),
|
||||||
JsonSettingsDictionary.GetIsSiteCachingOn(settingsJSON),
|
JsonSettingsDictionary.GetIsSiteCachingOn(settingsJSON),
|
||||||
JsonSettingsDictionary.GetActiveTheme(settingsJSON) ?? typeof(Themes.LastenradBayern).FullName);
|
JsonSettingsDictionary.GetActiveTheme(settingsJSON) ?? typeof(Themes.LastenradBayern).FullName);
|
||||||
|
@ -145,7 +146,7 @@ namespace TINK
|
||||||
m_oModelRoot = new TinkApp(
|
m_oModelRoot = new TinkApp(
|
||||||
settings,
|
settings,
|
||||||
store, // Manages user account
|
store, // Manages user account
|
||||||
(isConnected, activeUri, sessionCookie, mail, expiresAfter) => ConnectorFactory.Create(isConnected, activeUri, $"sharee.bike/{appInfoService.Version}", sessionCookie, mail, expiresAfter),
|
(isConnected, activeUri, sessionCookie, mail, expiresAfter) => ConnectorFactory.Create(isConnected, activeUri, new Repository.AppContextInfo("baei987w", "LastenradBayern", appInfoService.Version), sessionCookie, mail, expiresAfter),
|
||||||
GeolocationServicesContainer,
|
GeolocationServicesContainer,
|
||||||
null, /* locksService */
|
null, /* locksService */
|
||||||
DependencyService.Get<ISmartDevice>(),
|
DependencyService.Get<ISmartDevice>(),
|
||||||
|
@ -255,6 +256,30 @@ namespace TINK
|
||||||
.CreateLogger();
|
.CreateLogger();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <param name="uri">The URI for the request.</param>
|
||||||
|
/// <summary>Overriden to respond when the user initiates an app link request.</summary>
|
||||||
|
protected override void OnAppLinkRequestReceived(Uri uri)
|
||||||
|
{
|
||||||
|
base.OnAppLinkRequestReceived(uri);
|
||||||
|
if (uri.Host.ToLower() == "sharee.bike")
|
||||||
|
{
|
||||||
|
// Input e.g. sharee.bike/sharee?lat=49.921&long=32.51
|
||||||
|
Array segments = Array.ConvertAll(uri.Segments, segment => segment.Replace("/", "")).Skip(1).ToArray();
|
||||||
|
if (uri.Query.Length > 0)
|
||||||
|
{
|
||||||
|
Dictionary<string, string> queryDict = uri.Query
|
||||||
|
.Substring(1)
|
||||||
|
.Split("&")
|
||||||
|
.Select(query => query.Split('='))
|
||||||
|
.ToDictionary(query => query.FirstOrDefault(), query => query.Skip(1).FirstOrDefault());
|
||||||
|
}
|
||||||
|
// segments == ["sharee"]
|
||||||
|
// queryDict == [{["lat", "49.921"]}], {["long", "32.51"]}]
|
||||||
|
// => Navigate and pass params depending on linkinput
|
||||||
|
// If no custom navigation is configured, the app just opens as if the user opened it
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary> Gets the current logging level.</summary>
|
/// <summary> Gets the current logging level.</summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
private static LogEventLevel GetCurrentLogEventLevel()
|
private static LogEventLevel GetCurrentLogEventLevel()
|
||||||
|
@ -283,7 +308,7 @@ namespace TINK
|
||||||
if (_PermissionsService != null)
|
if (_PermissionsService != null)
|
||||||
return _PermissionsService;
|
return _PermissionsService;
|
||||||
|
|
||||||
_PermissionsService = new Services.Permissions.Plugin.Permissions();
|
_PermissionsService = new Services.Permissions.Essentials.Permissions();
|
||||||
return _PermissionsService;
|
return _PermissionsService;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
<br />Version ACTIVE_APPNAME: <b>CURRENT_VERSION_TINKAPP</b>.
|
<br />Version ACTIVE_APPNAME: <b>CURRENT_VERSION_TINKAPP</b>.
|
||||||
<div class="content_title2">Entwickler</div>
|
<div class="content_title2">Entwickler</div>
|
||||||
<div style=""></div>
|
<div style=""></div>
|
||||||
<br />Programmierung ACTIVE_APPNAME: O. Hauff, o.hauff@sharee.bike.<br />
|
<br />Programmierung ACTIVE_APPNAME: O. Hauff, app@sharee.bike<br />
|
||||||
<div class="content_title2">Verwendete Bibliotheken</div>
|
<div class="content_title2">Verwendete Bibliotheken</div>
|
||||||
<div style=""></div>
|
<div style=""></div>
|
||||||
<br /><table>
|
<br /><table>
|
||||||
|
|
|
@ -149,7 +149,7 @@ namespace TINK.View.Account
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -37,6 +37,7 @@
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
|
<RowDefinition Height="Auto" />
|
||||||
</Grid.RowDefinitions>
|
</Grid.RowDefinitions>
|
||||||
<Grid.ColumnDefinitions>
|
<Grid.ColumnDefinitions>
|
||||||
<ColumnDefinition Width="Auto" />
|
<ColumnDefinition Width="Auto" />
|
||||||
|
@ -84,6 +85,12 @@
|
||||||
IsVisible="{Binding TariffDescription.AboEuroPerMonth, Converter={StaticResource Label_Converter}}"
|
IsVisible="{Binding TariffDescription.AboEuroPerMonth, Converter={StaticResource Label_Converter}}"
|
||||||
Grid.Row="4"
|
Grid.Row="4"
|
||||||
Grid.Column="1"/>
|
Grid.Column="1"/>
|
||||||
|
<Label
|
||||||
|
TextType="Html"
|
||||||
|
Text="{Binding TariffDescription.OperatorAgb}"
|
||||||
|
IsVisible="{Binding TariffDescription.OperatorAgb, Converter={StaticResource Label_Converter}}"
|
||||||
|
Grid.Row="5"
|
||||||
|
Grid.ColumnSpan="3"/>
|
||||||
</Grid>
|
</Grid>
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
</ContentView>
|
</ContentView>
|
||||||
|
|
|
@ -49,6 +49,7 @@
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
|
<RowDefinition Height="Auto" />
|
||||||
</Grid.RowDefinitions>
|
</Grid.RowDefinitions>
|
||||||
<Grid.ColumnDefinitions>
|
<Grid.ColumnDefinitions>
|
||||||
<ColumnDefinition Width="Auto" />
|
<ColumnDefinition Width="Auto" />
|
||||||
|
@ -96,6 +97,12 @@
|
||||||
IsVisible="{Binding TariffDescription.AboEuroPerMonth, Converter={StaticResource Label_Converter}}"
|
IsVisible="{Binding TariffDescription.AboEuroPerMonth, Converter={StaticResource Label_Converter}}"
|
||||||
Grid.Row="4"
|
Grid.Row="4"
|
||||||
Grid.Column="1"/>
|
Grid.Column="1"/>
|
||||||
|
<Label
|
||||||
|
TextType="Html"
|
||||||
|
Text="{Binding TariffDescription.OperatorAgb}"
|
||||||
|
IsVisible="{Binding TariffDescription.OperatorAgb, Converter={StaticResource Label_Converter}}"
|
||||||
|
Grid.Row="5"
|
||||||
|
Grid.ColumnSpan="3"/>
|
||||||
</Grid>
|
</Grid>
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
</ContentView>
|
</ContentView>
|
||||||
|
|
|
@ -14,58 +14,73 @@
|
||||||
<Frame>
|
<Frame>
|
||||||
<StackLayout
|
<StackLayout
|
||||||
Orientation="Vertical">
|
Orientation="Vertical">
|
||||||
<Label
|
<!-- Title bar stack layout-->
|
||||||
HorizontalOptions="Center"
|
<StackLayout
|
||||||
FontAttributes="Bold"
|
Orientation="Vertical">
|
||||||
Text="{Binding StationDetailText}"/>
|
<Label
|
||||||
<ListView
|
HorizontalOptions="Center"
|
||||||
x:Name="BikesAtStationListView"
|
FontAttributes="Bold"
|
||||||
SelectionMode="None"
|
TextColor="{DynamicResource primary-back-title-color}"
|
||||||
SelectedItem="{Binding SelectedBike}"
|
Text="{Binding StationDetailText}"/>
|
||||||
IsEnabled="{Binding IsIdle}"
|
<BoxView
|
||||||
IsVisible="{Binding IsBikesListVisible}"
|
HeightRequest="1"
|
||||||
HasUnevenRows="True"
|
Color="{DynamicResource primary-back-title-color}"/>
|
||||||
ItemTemplate="{StaticResource bikeTemplateSelector}"/>
|
</StackLayout>
|
||||||
<Label
|
<!-- Center stack layout -->
|
||||||
|
<StackLayout
|
||||||
|
Orientation="Vertical"
|
||||||
|
VerticalOptions="CenterAndExpand">
|
||||||
|
<ListView
|
||||||
|
x:Name="BikesAtStationListView"
|
||||||
|
SelectionMode="None"
|
||||||
|
SelectedItem="{Binding SelectedBike}"
|
||||||
|
IsEnabled="{Binding IsIdle}"
|
||||||
|
IsVisible="{Binding IsBikesListVisible}"
|
||||||
|
HasUnevenRows="True"
|
||||||
|
ItemTemplate="{StaticResource bikeTemplateSelector}"/>
|
||||||
|
<Label
|
||||||
IsVisible="{Binding IsNoBikesAtStationVisible}"
|
IsVisible="{Binding IsNoBikesAtStationVisible}"
|
||||||
VerticalOptions="EndAndExpand"
|
|
||||||
Text="{Binding NoBikesAtStationText}"/>
|
Text="{Binding NoBikesAtStationText}"/>
|
||||||
<Label
|
</StackLayout>
|
||||||
TextType="Html"
|
<!-- Status bar stack layout-->
|
||||||
Text="{Binding ContactSupportHintText}">
|
<StackLayout
|
||||||
<Label.GestureRecognizers>
|
Orientation="Vertical">
|
||||||
<TapGestureRecognizer Command="{Binding ContactSupportClickedCommand}"/>
|
<Label
|
||||||
</Label.GestureRecognizers>
|
TextType="Html"
|
||||||
</Label>
|
Text="{Binding ContactSupportHintText}">
|
||||||
<Label
|
<Label.GestureRecognizers>
|
||||||
|
<TapGestureRecognizer Command="{Binding ContactSupportClickedCommand}"/>
|
||||||
|
</Label.GestureRecognizers>
|
||||||
|
</Label>
|
||||||
|
<Label
|
||||||
IsVisible="{Binding IsLoginRequiredHintVisible}"
|
IsVisible="{Binding IsLoginRequiredHintVisible}"
|
||||||
TextType="Html"
|
TextType="Html"
|
||||||
Text="{Binding LoginRequiredHintText}">
|
Text="{Binding LoginRequiredHintText}">
|
||||||
<Label.GestureRecognizers>
|
<Label.GestureRecognizers>
|
||||||
<TapGestureRecognizer Command="{Binding LoginRequiredHintClickedCommand}"/>
|
<TapGestureRecognizer Command="{Binding LoginRequiredHintClickedCommand}"/>
|
||||||
</Label.GestureRecognizers>
|
</Label.GestureRecognizers>
|
||||||
</Label>
|
</Label>
|
||||||
<StackLayout
|
<StackLayout
|
||||||
VerticalOptions="EndAndExpand"
|
Orientation="Horizontal">
|
||||||
Orientation="Horizontal">
|
<Label
|
||||||
<Label
|
HeightRequest="20"
|
||||||
HeightRequest="20"
|
Text="{Binding StatusInfoText}"
|
||||||
Text="{Binding StatusInfoText}"
|
VerticalOptions="Center"
|
||||||
VerticalOptions="Center"
|
HorizontalOptions="FillAndExpand"/>
|
||||||
HorizontalOptions="FillAndExpand"/>
|
<ActivityIndicator IsRunning="{Binding IsRunning}"
|
||||||
<ActivityIndicator IsRunning="{Binding IsRunning}"
|
IsVisible="{Binding IsRunning}"
|
||||||
IsVisible="{Binding IsRunning}"
|
HeightRequest="20"
|
||||||
HeightRequest="20"
|
VerticalOptions="CenterAndExpand"
|
||||||
VerticalOptions="CenterAndExpand"
|
HorizontalOptions="End">
|
||||||
HorizontalOptions="End">
|
<ActivityIndicator.WidthRequest>
|
||||||
<ActivityIndicator.WidthRequest>
|
<OnPlatform x:TypeArguments="x:Double" iOS="40" Android="40" WinPhone="40" />
|
||||||
<OnPlatform x:TypeArguments="x:Double" iOS="40" Android="40" WinPhone="40" />
|
</ActivityIndicator.WidthRequest>
|
||||||
</ActivityIndicator.WidthRequest>
|
<ActivityIndicator.Color>
|
||||||
<ActivityIndicator.Color>
|
<OnPlatform x:TypeArguments="Color"
|
||||||
<OnPlatform x:TypeArguments="Color"
|
iOS="#2499CE" WinPhone="#2499CE" />
|
||||||
iOS="#2499CE" WinPhone="#2499CE" />
|
</ActivityIndicator.Color>
|
||||||
</ActivityIndicator.Color>
|
</ActivityIndicator>
|
||||||
</ActivityIndicator>
|
</StackLayout>
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
</Frame>
|
</Frame>
|
||||||
|
|
|
@ -11,7 +11,7 @@ namespace TINK.View.BikesAtStation
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using TINK.Model.Device;
|
using TINK.Model.Device;
|
||||||
#if USEFLYOUT
|
#if USEFLYOUT
|
||||||
using TINK.View.MasterDetail;
|
using TINK.View.MasterDetail;
|
||||||
#endif
|
#endif
|
||||||
using TINK.ViewModel;
|
using TINK.ViewModel;
|
||||||
using TINK.Model;
|
using TINK.Model;
|
||||||
|
@ -33,6 +33,9 @@ using TINK.View.MasterDetail;
|
||||||
{
|
{
|
||||||
|
|
||||||
private BikesAtStationPageViewModel m_oViewModel;
|
private BikesAtStationPageViewModel m_oViewModel;
|
||||||
|
|
||||||
|
/// <summary> Initialization status to ensure initialization logic is not called multiple times. </summary>
|
||||||
|
private bool isInitializationStarted = false;
|
||||||
#if TRYNOTBACKSTYLE
|
#if TRYNOTBACKSTYLE
|
||||||
public BikesAtStationPage()
|
public BikesAtStationPage()
|
||||||
{
|
{
|
||||||
|
@ -62,6 +65,10 @@ using TINK.View.MasterDetail;
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected async override void OnAppearing()
|
protected async override void OnAppearing()
|
||||||
{
|
{
|
||||||
|
// Don't repeat the initialization if it has been completed already.
|
||||||
|
if (isInitializationStarted) return;
|
||||||
|
isInitializationStarted = true;
|
||||||
|
|
||||||
if (m_oViewModel != null)
|
if (m_oViewModel != null)
|
||||||
{
|
{
|
||||||
#if BACKSTYLE
|
#if BACKSTYLE
|
||||||
|
@ -167,7 +174,7 @@ using TINK.View.MasterDetail;
|
||||||
/// <param name="cancel">Text of button.</param>
|
/// <param name="cancel">Text of button.</param>
|
||||||
/// <returns>True if user pressed accept.</returns>
|
/// <returns>True if user pressed accept.</returns>
|
||||||
public new async Task<bool> DisplayAlert(string title, string message, string accept, string cancel)
|
public new async Task<bool> DisplayAlert(string title, string message, string accept, string cancel)
|
||||||
=> await App.Current.MainPage.DisplayAlert(title, message, accept, cancel);
|
=> await App.Current.MainPage.DisplayAlert(title, message, accept, cancel);
|
||||||
|
|
||||||
/// <summary> Displays detailed alert message.</summary>
|
/// <summary> Displays detailed alert message.</summary>
|
||||||
/// <param name="title">Title of message.</param>
|
/// <param name="title">Title of message.</param>
|
||||||
|
@ -228,7 +235,10 @@ using TINK.View.MasterDetail;
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
||||||
#else
|
#else
|
||||||
public async Task<IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
/// <summary> Displays user feedback popup.</summary>
|
||||||
|
/// <param name="co2Saving"> Co2 saving information.</param>
|
||||||
|
/// <returns>User feedback.</returns>
|
||||||
|
public async Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup(co2Saving));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -88,7 +88,7 @@ namespace TINK.View.Contact
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if USEFLYOUT
|
#if USEFLYOUT
|
||||||
|
|
|
@ -114,7 +114,7 @@ namespace TINK.View.Contact
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if USEFLYOUT
|
#if USEFLYOUT
|
||||||
|
|
|
@ -12,11 +12,14 @@
|
||||||
<Grid.RowDefinitions>
|
<Grid.RowDefinitions>
|
||||||
<!-- Head and title row -->
|
<!-- Head and title row -->
|
||||||
<RowDefinition Height="auto"/>
|
<RowDefinition Height="auto"/>
|
||||||
|
<!--- Co2saving-->
|
||||||
|
<RowDefinition Height="auto"/>
|
||||||
<!--- checkbox and input elements-->
|
<!--- checkbox and input elements-->
|
||||||
<RowDefinition Height="*"/>
|
<RowDefinition Height="*"/>
|
||||||
<!--- ok button-->
|
<!--- ok button-->
|
||||||
<RowDefinition Height="auto"/>
|
<RowDefinition Height="auto"/>
|
||||||
</Grid.RowDefinitions>
|
</Grid.RowDefinitions>
|
||||||
|
<!-- Head and title -->
|
||||||
<Grid
|
<Grid
|
||||||
Padding="30"
|
Padding="30"
|
||||||
BackgroundColor="{DynamicResource primary-back-title-color}">
|
BackgroundColor="{DynamicResource primary-back-title-color}">
|
||||||
|
@ -34,7 +37,16 @@
|
||||||
</Image.Source>
|
</Image.Source>
|
||||||
</Image>
|
</Image>
|
||||||
</Grid>
|
</Grid>
|
||||||
<ScrollView Grid.Row="1">
|
<!-- Co2saving -->
|
||||||
|
<Frame
|
||||||
|
x:Name="Co2SavingFrame"
|
||||||
|
Grid.Row="1">
|
||||||
|
<Label
|
||||||
|
x:Name="Co2SavingLabel"
|
||||||
|
Text=""/>
|
||||||
|
</Frame>
|
||||||
|
<!-- Checkbox and input elements -->
|
||||||
|
<ScrollView Grid.Row="2">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Grid.RowDefinitions>
|
<Grid.RowDefinitions>
|
||||||
<RowDefinition Height="Auto"/>
|
<RowDefinition Height="Auto"/>
|
||||||
|
@ -77,8 +89,9 @@
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
</Grid>
|
</Grid>
|
||||||
</ScrollView>
|
</ScrollView>
|
||||||
|
<!-- Buttons -->
|
||||||
<Button
|
<Button
|
||||||
Grid.Row="2"
|
Grid.Row="3"
|
||||||
Clicked="OnOkClicked"
|
Clicked="OnOkClicked"
|
||||||
Text="OK"/>
|
Text="OK"/>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
|
@ -7,9 +7,15 @@ namespace TINK.View
|
||||||
[XamlCompilation(XamlCompilationOptions.Compile)]
|
[XamlCompilation(XamlCompilationOptions.Compile)]
|
||||||
public partial class FeedbackPopup : Popup<FeedbackPopup.Result>
|
public partial class FeedbackPopup : Popup<FeedbackPopup.Result>
|
||||||
{
|
{
|
||||||
public FeedbackPopup()
|
/// <summary> Constructs user feedback popup.</summary>
|
||||||
|
/// <param name="co2Saving"> Co2 saving information.</param>
|
||||||
|
public FeedbackPopup(string co2Saving = null)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
if (string.IsNullOrEmpty(co2Saving))
|
||||||
|
Co2SavingFrame.IsVisible = false;
|
||||||
|
else
|
||||||
|
Co2SavingLabel.Text = co2Saving;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override FeedbackPopup.Result GetLightDismissResult()
|
protected override FeedbackPopup.Result GetLightDismissResult()
|
||||||
|
|
|
@ -138,7 +138,10 @@ namespace TINK.View.FindBike
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
||||||
#else
|
#else
|
||||||
public async Task<IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
/// <summary> Displays user feedback popup.</summary>
|
||||||
|
/// <param name="co2Saving"> Co2 saving information.</param>
|
||||||
|
/// <returns>User feedback.</returns>
|
||||||
|
public async Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup(co2Saving));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -122,7 +122,7 @@ namespace TINK.View.Info.BikeInfo
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -116,7 +116,7 @@ namespace TINK.View.Login
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -22,7 +22,7 @@
|
||||||
<Button
|
<Button
|
||||||
x:Name="TINKButton"
|
x:Name="TINKButton"
|
||||||
AutomationId ="FilterTINK_button"
|
AutomationId ="FilterTINK_button"
|
||||||
Text="TINK"
|
Text="{x:Static resources:AppResources.MarkingCargoBike}"
|
||||||
Command="{Binding OnToggleKonradToTink}"
|
Command="{Binding OnToggleKonradToTink}"
|
||||||
IsVisible="{Binding IsToggleVisible}"
|
IsVisible="{Binding IsToggleVisible}"
|
||||||
TextColor ="{Binding TinkColor}"
|
TextColor ="{Binding TinkColor}"
|
||||||
|
@ -33,7 +33,7 @@
|
||||||
<Button
|
<Button
|
||||||
x:Name="KonradButton"
|
x:Name="KonradButton"
|
||||||
AutomationId ="FilterKonrad_button"
|
AutomationId ="FilterKonrad_button"
|
||||||
Text="Konrad"
|
Text="{x:Static resources:AppResources.MarkingCityBike}"
|
||||||
Command="{Binding OnToggleTinkToKonrad}"
|
Command="{Binding OnToggleTinkToKonrad}"
|
||||||
IsVisible="{Binding IsToggleVisible}"
|
IsVisible="{Binding IsToggleVisible}"
|
||||||
TextColor="{Binding KonradColor}"
|
TextColor="{Binding KonradColor}"
|
||||||
|
|
|
@ -21,6 +21,9 @@ namespace TINK.View.Map
|
||||||
/// <summary> View model to notify about whether page appears or hides. </summary>
|
/// <summary> View model to notify about whether page appears or hides. </summary>
|
||||||
private MapPageViewModel MapPageViewModel { get; set; }
|
private MapPageViewModel MapPageViewModel { get; set; }
|
||||||
|
|
||||||
|
/// <summary> Initialization status to ensure initialization logic is not called multiple times. </summary>
|
||||||
|
private bool isInitializationStarted = false;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Constructs map page instance.
|
/// Constructs map page instance.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -117,7 +120,7 @@ namespace TINK.View.Map
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if USEFLYOUT
|
#if USEFLYOUT
|
||||||
|
@ -131,6 +134,10 @@ namespace TINK.View.Map
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected async override void OnAppearing()
|
protected async override void OnAppearing()
|
||||||
{
|
{
|
||||||
|
// Don't repeat the initialization if it has been completed already.
|
||||||
|
if (isInitializationStarted) return;
|
||||||
|
isInitializationStarted = true;
|
||||||
|
|
||||||
// Pass reference to member Navigation to show bikes at station x dialog.
|
// Pass reference to member Navigation to show bikes at station x dialog.
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
@ -139,18 +146,11 @@ namespace TINK.View.Map
|
||||||
#if TRYNOTBACKSTYLE
|
#if TRYNOTBACKSTYLE
|
||||||
MapPageViewModel = new MapPageViewModel();
|
MapPageViewModel = new MapPageViewModel();
|
||||||
#else
|
#else
|
||||||
MapPageViewModel = new MapPageViewModel(
|
MapPageViewModel = CreateMapPageViewModel();
|
||||||
App.ModelRoot,
|
|
||||||
App.PermissionsService,
|
|
||||||
App.BluetoothService,
|
|
||||||
App.GeolocationServicesContainer.Active,
|
|
||||||
(mapspan) => MyMap.MoveToRegion(mapspan),
|
|
||||||
this,
|
|
||||||
Navigation);
|
|
||||||
#endif
|
#endif
|
||||||
} catch (Exception exception)
|
}
|
||||||
|
catch (Exception exception)
|
||||||
{
|
{
|
||||||
|
|
||||||
Log.ForContext<MapPage>().Error("Constructing map page view model failed. {Exception}", exception);
|
Log.ForContext<MapPage>().Error("Constructing map page view model failed. {Exception}", exception);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -171,15 +171,7 @@ namespace TINK.View.Map
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (Device.RuntimePlatform == Device.iOS)
|
ApplyCustomiOSStyling();
|
||||||
{
|
|
||||||
TINKButton.BackgroundColor = Color.LightGray;
|
|
||||||
TINKButton.BorderColor = Color.Black;
|
|
||||||
TINKButton.Margin = new Thickness(10, 10, 10, 10);
|
|
||||||
KonradButton.BackgroundColor = Color.LightGray;
|
|
||||||
KonradButton.BorderColor = Color.Black;
|
|
||||||
KonradButton.Margin = new Thickness(10, 10, 10, 10);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
catch (Exception exception)
|
catch (Exception exception)
|
||||||
{
|
{
|
||||||
|
@ -201,13 +193,9 @@ namespace TINK.View.Map
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
// Pre move and scanle maps to avoid initial display of map in Rome.
|
// Pre move and scanle maps to avoid initial display of map in Rome.
|
||||||
Log.ForContext<MapPage>().Verbose("Moving and scaling map.");
|
PremoveAndScaleMap();
|
||||||
MapPageViewModel.MoveAndScale(
|
|
||||||
(mapSpan) => MyMap.MoveToRegion(mapSpan),
|
|
||||||
App.ModelRoot.Uris.ActiveUri,
|
|
||||||
App.ModelRoot.GroupFilterMapPage);
|
|
||||||
}
|
}
|
||||||
catch(Exception exception)
|
catch (Exception exception)
|
||||||
{
|
{
|
||||||
// Continue because a map not beeing moved/ scaled is no reason for aborting startup.
|
// Continue because a map not beeing moved/ scaled is no reason for aborting startup.
|
||||||
Log.ForContext<MapPage>().Error("Moving and scaling map failed. {Exception}", exception);
|
Log.ForContext<MapPage>().Error("Moving and scaling map failed. {Exception}", exception);
|
||||||
|
@ -225,6 +213,49 @@ namespace TINK.View.Map
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Premoves the Map to a certain location.
|
||||||
|
/// </summary>
|
||||||
|
private void PremoveAndScaleMap()
|
||||||
|
{
|
||||||
|
Log.ForContext<MapPage>().Verbose("Moving and scaling map.");
|
||||||
|
MapPageViewModel.MoveAndScale(
|
||||||
|
(mapSpan) => MyMap.MoveToRegion(mapSpan),
|
||||||
|
App.ModelRoot.ActiveMapSpan);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Creates the Map Page's view model.
|
||||||
|
/// </summary>
|
||||||
|
private MapPageViewModel CreateMapPageViewModel()
|
||||||
|
{
|
||||||
|
Log.ForContext<MapPage>().Verbose("Constructing map page view model.");
|
||||||
|
return new MapPageViewModel(
|
||||||
|
App.ModelRoot,
|
||||||
|
App.PermissionsService,
|
||||||
|
App.BluetoothService,
|
||||||
|
App.GeolocationServicesContainer.Active,
|
||||||
|
(mapspan) => MyMap.MoveToRegion(mapspan),
|
||||||
|
this,
|
||||||
|
Navigation);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Applies iOS specific styling to branded Buttons.
|
||||||
|
/// </summary>
|
||||||
|
private void ApplyCustomiOSStyling()
|
||||||
|
{
|
||||||
|
if (Device.RuntimePlatform == Device.iOS)
|
||||||
|
{
|
||||||
|
TINKButton.BackgroundColor = Color.LightGray;
|
||||||
|
TINKButton.BorderColor = Color.Black;
|
||||||
|
TINKButton.Margin = new Thickness(10, 10, 10, 10);
|
||||||
|
KonradButton.BackgroundColor = Color.LightGray;
|
||||||
|
KonradButton.BorderColor = Color.Black;
|
||||||
|
KonradButton.Margin = new Thickness(10, 10, 10, 10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Invoked when pages is closed/ hidden.
|
/// Invoked when pages is closed/ hidden.
|
||||||
/// Stops update process.
|
/// Stops update process.
|
||||||
|
|
|
@ -89,7 +89,10 @@ namespace TINK.View.MiniSurvey
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
||||||
#else
|
#else
|
||||||
public async Task<IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
/// <summary> Displays user feedback popup.</summary>
|
||||||
|
/// <param name="co2Saving"> Co2 saving information.</param>
|
||||||
|
/// <returns>User feedback.</returns>
|
||||||
|
public async Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup(co2Saving));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -12,38 +12,43 @@
|
||||||
</ContentPage.Resources>
|
</ContentPage.Resources>
|
||||||
<ContentPage.Content>
|
<ContentPage.Content>
|
||||||
<Frame>
|
<Frame>
|
||||||
<StackLayout>
|
<StackLayout
|
||||||
<ListView
|
Orientation="Vertical">
|
||||||
x:Name="MyBikesListView"
|
<!-- Center stack layout -->
|
||||||
SelectionMode="None"
|
<StackLayout
|
||||||
SelectedItem="{Binding SelectedBike}"
|
VerticalOptions="CenterAndExpand"
|
||||||
IsEnabled="{Binding IsIdle}"
|
Orientation="Vertical">
|
||||||
IsVisible="{Binding IsBikesListVisible}"
|
<ListView
|
||||||
HasUnevenRows="True"
|
x:Name="MyBikesListView"
|
||||||
ItemTemplate="{StaticResource bikeTemplateSelector}"/>
|
SelectionMode="None"
|
||||||
<StackLayout
|
SelectedItem="{Binding SelectedBike}"
|
||||||
VerticalOptions="EndAndExpand"
|
IsEnabled="{Binding IsIdle}"
|
||||||
Orientation="Horizontal">
|
IsVisible="{Binding IsBikesListVisible}"
|
||||||
|
HasUnevenRows="True"
|
||||||
|
ItemTemplate="{StaticResource bikeTemplateSelector}"/>
|
||||||
<Label
|
<Label
|
||||||
IsVisible="{Binding IsNoBikesOccupiedVisible}"
|
IsVisible="{Binding IsNoBikesOccupiedVisible}"
|
||||||
VerticalOptions="StartAndExpand"
|
|
||||||
Text="{Binding NoBikesOccupiedText}"/>
|
Text="{Binding NoBikesOccupiedText}"/>
|
||||||
|
</StackLayout>
|
||||||
|
<!-- Status bar stack layout-->
|
||||||
|
<StackLayout
|
||||||
|
Orientation="Horizontal">
|
||||||
<Label
|
<Label
|
||||||
HeightRequest="20"
|
HeightRequest="20"
|
||||||
Text="{Binding StatusInfoText}"
|
Text="{Binding StatusInfoText}"
|
||||||
VerticalOptions="Center"
|
VerticalOptions="Center"
|
||||||
HorizontalOptions="FillAndExpand"/>
|
HorizontalOptions="FillAndExpand"/>
|
||||||
<ActivityIndicator IsRunning="{Binding IsRunning}"
|
<ActivityIndicator IsRunning="{Binding IsRunning}"
|
||||||
IsVisible="{Binding IsRunning}"
|
IsVisible="{Binding IsRunning}"
|
||||||
HeightRequest="20"
|
HeightRequest="20"
|
||||||
VerticalOptions="CenterAndExpand"
|
VerticalOptions="CenterAndExpand"
|
||||||
HorizontalOptions="End">
|
HorizontalOptions="End">
|
||||||
<ActivityIndicator.WidthRequest>
|
<ActivityIndicator.WidthRequest>
|
||||||
<OnPlatform x:TypeArguments="x:Double" iOS="40" Android="40" WinPhone="40" />
|
<OnPlatform x:TypeArguments="x:Double" iOS="40" Android="40" WinPhone="40" />
|
||||||
</ActivityIndicator.WidthRequest>
|
</ActivityIndicator.WidthRequest>
|
||||||
<ActivityIndicator.Color>
|
<ActivityIndicator.Color>
|
||||||
<OnPlatform x:TypeArguments="Color"
|
<OnPlatform x:TypeArguments="Color"
|
||||||
iOS="#2499CE" WinPhone="#2499CE" />
|
iOS="#2499CE" WinPhone="#2499CE" />
|
||||||
</ActivityIndicator.Color>
|
</ActivityIndicator.Color>
|
||||||
</ActivityIndicator>
|
</ActivityIndicator>
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
|
|
|
@ -20,6 +20,9 @@ namespace TINK.View.MyBikes
|
||||||
/// <summary> Refernce to view model. </summary>
|
/// <summary> Refernce to view model. </summary>
|
||||||
MyBikesPageViewModel m_oViewModel = null;
|
MyBikesPageViewModel m_oViewModel = null;
|
||||||
|
|
||||||
|
/// <summary> Initialization status to ensure initialization logic is not called multiple times. </summary>
|
||||||
|
private bool isInitializationStarted = false;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Constructs a my bikes page.
|
/// Constructs a my bikes page.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -33,6 +36,10 @@ namespace TINK.View.MyBikes
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected async override void OnAppearing()
|
protected async override void OnAppearing()
|
||||||
{
|
{
|
||||||
|
// Don't repeat the initialization if it has been completed already.
|
||||||
|
if (isInitializationStarted) return;
|
||||||
|
isInitializationStarted = true;
|
||||||
|
|
||||||
if (m_oViewModel != null)
|
if (m_oViewModel != null)
|
||||||
{
|
{
|
||||||
// No need to create view model, set binding context an items source if already done.
|
// No need to create view model, set binding context an items source if already done.
|
||||||
|
@ -163,7 +170,10 @@ namespace TINK.View.MyBikes
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
||||||
#else
|
#else
|
||||||
public async Task<IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
/// <summary> Displays user feedback popup.</summary>
|
||||||
|
/// <param name="co2Saving"> Co2 saving information.</param>
|
||||||
|
/// <returns>User feedback.</returns>
|
||||||
|
public async Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup(co2Saving));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -146,7 +146,10 @@ namespace TINK.View.Settings
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
||||||
#else
|
#else
|
||||||
public async Task<IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
/// <summary> Displays user feedback popup.</summary>
|
||||||
|
/// <param name="co2Saving"> Co2 saving information.</param>
|
||||||
|
/// <returns>User feedback.</returns>
|
||||||
|
public async Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup(co2Saving));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if USERFEEDBACKDLG_TRYOUT
|
#if USERFEEDBACKDLG_TRYOUT
|
||||||
|
|
|
@ -75,7 +75,7 @@ namespace TINK.View.WhatsNew.Agb
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -79,7 +79,7 @@ namespace TINK.View.WhatsNew
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -55,8 +55,8 @@ namespace TINK.ViewModel.MasterDetail
|
||||||
}
|
}
|
||||||
else if (type == typeof(TabbedPageInfo))
|
else if (type == typeof(TabbedPageInfo))
|
||||||
{
|
{
|
||||||
return string.Format(AppResources.MarkingAbout, ContactPageViewModel.GetAppName(App.ModelRoot.Uris.ActiveUri));
|
return AppResources.MarkingAbout;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return type.Name;
|
return type.Name;
|
||||||
|
|
|
@ -66,7 +66,7 @@ namespace TINK.ViewModel.RootShell
|
||||||
public bool IsSettingsPageVisible => App.ModelRoot.Uris.ActiveUri.Host.GetIsCopri()
|
public bool IsSettingsPageVisible => App.ModelRoot.Uris.ActiveUri.Host.GetIsCopri()
|
||||||
|| App.ModelRoot.ActiveUser.IsLoggedIn;
|
|| App.ModelRoot.ActiveUser.IsLoggedIn;
|
||||||
|
|
||||||
public string TabbedPageIngoTitle => string.Format(AppResources.MarkingAbout, ContactPageViewModel.GetAppName(App.ModelRoot.Uris.ActiveUri));
|
public string TabbedPageIngoTitle => AppResources.MarkingAbout;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,11 +5,28 @@ using Android.OS;
|
||||||
using Android.Content;
|
using Android.Content;
|
||||||
using Java.Interop;
|
using Java.Interop;
|
||||||
using Plugin.Permissions;
|
using Plugin.Permissions;
|
||||||
|
using Xamarin.Forms.Platform.Android.AppLinks;
|
||||||
|
using Firebase;
|
||||||
|
|
||||||
namespace TINK.Droid
|
namespace TINK.Droid
|
||||||
{
|
{
|
||||||
[Activity (Label = "Sharee", Icon = "@drawable/sharee", Theme="@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
|
[Activity (Label = "Mein konrad", Icon = "@drawable/sharee", Theme="@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
|
||||||
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
|
|
||||||
|
[IntentFilter(new[] { Intent.ActionView },
|
||||||
|
Categories = new[] { Intent.ActionView, Intent.CategoryBrowsable, Intent.CategoryDefault },
|
||||||
|
DataScheme = "https",
|
||||||
|
DataHost = "sharee.bike",
|
||||||
|
DataPathPrefix = "/meinkonrad",
|
||||||
|
AutoVerify = true)]
|
||||||
|
|
||||||
|
[IntentFilter(new[] { Intent.ActionView },
|
||||||
|
Categories = new[] { Intent.ActionView, Intent.CategoryBrowsable, Intent.CategoryDefault },
|
||||||
|
DataScheme = "http",
|
||||||
|
DataHost = "sharee.bike",
|
||||||
|
DataPathPrefix = "/meinkonrad",
|
||||||
|
AutoVerify = true)]
|
||||||
|
|
||||||
|
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
|
||||||
{
|
{
|
||||||
protected override void OnCreate (Bundle bundle)
|
protected override void OnCreate (Bundle bundle)
|
||||||
{
|
{
|
||||||
|
@ -20,6 +37,9 @@ namespace TINK.Droid
|
||||||
|
|
||||||
global::Xamarin.Forms.Forms.Init (this, bundle);
|
global::Xamarin.Forms.Forms.Init (this, bundle);
|
||||||
|
|
||||||
|
FirebaseApp.InitializeApp(this);
|
||||||
|
AndroidAppLinks.Init(this);
|
||||||
|
|
||||||
// Initialize xamarin.essentials, see https://docs.microsoft.com/en-us/xamarin/essentials/get-started?tabs=macos%2Candroid.
|
// Initialize xamarin.essentials, see https://docs.microsoft.com/en-us/xamarin/essentials/get-started?tabs=macos%2Candroid.
|
||||||
Xamarin.Essentials.Platform.Init(this, bundle);
|
Xamarin.Essentials.Platform.Init(this, bundle);
|
||||||
|
|
||||||
|
@ -51,7 +71,7 @@ namespace TINK.Droid
|
||||||
if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Essentials.Permissions))
|
if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Essentials.Permissions))
|
||||||
{
|
{
|
||||||
Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
|
Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
|
||||||
}
|
}
|
||||||
else if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Plugin.Permissions))
|
else if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Plugin.Permissions))
|
||||||
{
|
{
|
||||||
// Bug in 3.0.244 and earlier versions of sharee.bike app: Call of PermissionsImplementation.Current.OnRequestedPermission result was missing.
|
// Bug in 3.0.244 and earlier versions of sharee.bike app: Call of PermissionsImplementation.Current.OnRequestedPermission result was missing.
|
||||||
|
|
|
@ -10,13 +10,13 @@
|
||||||
<OutputType>Library</OutputType>
|
<OutputType>Library</OutputType>
|
||||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
<RootNamespace>TINK.Droid</RootNamespace>
|
<RootNamespace>TINK.Droid</RootNamespace>
|
||||||
<AssemblyName>TINK.Android</AssemblyName>
|
<AssemblyName>Meinkonrad.Android</AssemblyName>
|
||||||
<FileAlignment>512</FileAlignment>
|
<FileAlignment>512</FileAlignment>
|
||||||
<AndroidApplication>true</AndroidApplication>
|
<AndroidApplication>true</AndroidApplication>
|
||||||
<AndroidResgenFile>Resources\Resource.Designer.cs</AndroidResgenFile>
|
<AndroidResgenFile>Resources\Resource.Designer.cs</AndroidResgenFile>
|
||||||
<GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
|
<GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
|
||||||
<AndroidManifest>Properties\AndroidManifest.xml</AndroidManifest>
|
<AndroidManifest>Properties\AndroidManifest.xml</AndroidManifest>
|
||||||
<TargetFrameworkVersion>v10.0</TargetFrameworkVersion>
|
<TargetFrameworkVersion>v11.0</TargetFrameworkVersion>
|
||||||
<AndroidStoreUncompressedFileExtensions />
|
<AndroidStoreUncompressedFileExtensions />
|
||||||
<MandroidI18n />
|
<MandroidI18n />
|
||||||
<JavaMaximumHeapSize>2G</JavaMaximumHeapSize>
|
<JavaMaximumHeapSize>2G</JavaMaximumHeapSize>
|
||||||
|
@ -60,10 +60,13 @@
|
||||||
<BundleAssemblies>false</BundleAssemblies>
|
<BundleAssemblies>false</BundleAssemblies>
|
||||||
<AndroidSupportedAbis>armeabi-v7a;x86;x86_64;arm64-v8a</AndroidSupportedAbis>
|
<AndroidSupportedAbis>armeabi-v7a;x86;x86_64;arm64-v8a</AndroidSupportedAbis>
|
||||||
<MandroidI18n />
|
<MandroidI18n />
|
||||||
|
<AndroidPackageFormat>aab</AndroidPackageFormat>
|
||||||
|
<AndroidUseAapt2>true</AndroidUseAapt2>
|
||||||
|
<AndroidCreatePackagePerAbi>false</AndroidCreatePackagePerAbi>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
||||||
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.3" />
|
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.4" />
|
||||||
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
||||||
<PackageReference Include="MonkeyCache">
|
<PackageReference Include="MonkeyCache">
|
||||||
<Version>1.5.2</Version>
|
<Version>1.5.2</Version>
|
||||||
|
@ -162,34 +165,37 @@
|
||||||
<PackageReference Include="Xamarin.Android.Support.v7.RecyclerView" Version="28.0.0.3" />
|
<PackageReference Include="Xamarin.Android.Support.v7.RecyclerView" Version="28.0.0.3" />
|
||||||
<PackageReference Include="Xamarin.Android.Support.Vector.Drawable" Version="28.0.0.3" />
|
<PackageReference Include="Xamarin.Android.Support.Vector.Drawable" Version="28.0.0.3" />
|
||||||
<PackageReference Include="Xamarin.AndroidX.Core">
|
<PackageReference Include="Xamarin.AndroidX.Core">
|
||||||
<Version>1.6.0.1</Version>
|
<Version>1.6.0.3</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.AndroidX.MediaRouter">
|
<PackageReference Include="Xamarin.AndroidX.MediaRouter">
|
||||||
<Version>1.2.5</Version>
|
<Version>1.2.5.2</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.AndroidX.Palette">
|
<PackageReference Include="Xamarin.AndroidX.Palette">
|
||||||
<Version>1.0.0.8</Version>
|
<Version>1.0.0.10</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.AndroidX.RecyclerView">
|
<PackageReference Include="Xamarin.AndroidX.RecyclerView">
|
||||||
<Version>1.2.1.1</Version>
|
<Version>1.2.1.3</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
||||||
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
||||||
<PackageReference Include="Xamarin.CommunityToolkit">
|
<PackageReference Include="Xamarin.CommunityToolkit">
|
||||||
<Version>1.2.0</Version>
|
<Version>1.3.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Essentials">
|
<PackageReference Include="Xamarin.Essentials">
|
||||||
<Version>1.7.0</Version>
|
<Version>1.7.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms" Version="5.0.0.2125" />
|
<PackageReference Include="Xamarin.Forms" Version="5.0.0.2196" />
|
||||||
|
<PackageReference Include="Xamarin.Forms.AppLinks">
|
||||||
|
<Version>5.0.0.2244</Version>
|
||||||
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms.GoogleMaps">
|
<PackageReference Include="Xamarin.Forms.GoogleMaps">
|
||||||
<Version>3.3.0</Version>
|
<Version>3.3.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms.GoogleMaps.Bindings" Version="3.0.0" />
|
<PackageReference Include="Xamarin.Forms.GoogleMaps.Bindings" Version="3.0.0" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Base" Version="117.6.0" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Base" Version="117.6.0.1" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Basement" Version="117.6.0.1" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Basement" Version="117.6.0.2" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Maps" Version="117.0.1" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Maps" Version="117.0.1.1" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Tasks" Version="117.2.1" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Tasks" Version="117.2.1.1" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Mono.Android" />
|
<Reference Include="Mono.Android" />
|
||||||
|
@ -217,6 +223,7 @@
|
||||||
<None Include="app.config">
|
<None Include="app.config">
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</None>
|
</None>
|
||||||
|
<GoogleServicesJson Include="google-services.json" />
|
||||||
<None Include="Resources\AboutResources.txt" />
|
<None Include="Resources\AboutResources.txt" />
|
||||||
<None Include="Assets\AboutAssets.txt" />
|
<None Include="Assets\AboutAssets.txt" />
|
||||||
<EmbeddedResource Include="Resources\Font Awesome 5 Free-Solid-900.otf" />
|
<EmbeddedResource Include="Resources\Font Awesome 5 Free-Solid-900.otf" />
|
||||||
|
@ -645,24 +652,6 @@
|
||||||
<Generator>MSBuild:UpdateGeneratedFiles</Generator>
|
<Generator>MSBuild:UpdateGeneratedFiles</Generator>
|
||||||
</AndroidResource>
|
</AndroidResource>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable-hdpi\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable-mdpi\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable-xhdpi\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable-xxhdpi\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<AndroidResource Include="Resources\drawable-xxxhdpi\sharee_no_background.png" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="..\TINK\Meinkonrad.projitems" Label="Shared" Condition="Exists('..\TINK\Meinkonrad.projitems')" />
|
<Import Project="..\TINK\Meinkonrad.projitems" Label="Shared" Condition="Exists('..\TINK\Meinkonrad.projitems')" />
|
||||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
|
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
|
||||||
<ProjectExtensions>
|
<ProjectExtensions>
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="preferExternal" package="com.TeilRad.Meinkonstanz" android:versionName="3.0.257" android:versionCode="257">
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="internalOnly" package="com.TeilRad.Meinkonrad" android:versionName="3.0.267" android:versionCode="267">
|
||||||
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="29" />
|
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="30" />
|
||||||
<!-- Google Maps related permissions -->
|
<!-- Google Maps related permissions -->
|
||||||
<permission android:name="com.ecs.google.maps.v2.actionbarsherlock.permission.MAPS_RECEIVE" android:protectionLevel="signature" />
|
<!-- Permission to receive remote notifications from Google Play Services -->
|
||||||
|
<!-- Notice here that we have the package name of our application as a prefix on the permissions. -->
|
||||||
|
<permission android:name="com.TeilRad.Meinkonrad.permission.MAPS_RECEIVE" android:protectionLevel="signature" />
|
||||||
<!-- Network connectivity permissions -->
|
<!-- Network connectivity permissions -->
|
||||||
<!-- Access Google based webservices -->
|
<!-- Access Google based webservices -->
|
||||||
<!-- External storage for caching. -->
|
<!-- External storage for caching. -->
|
||||||
|
@ -15,6 +17,6 @@
|
||||||
<uses-permission android:name="android.permission.BLUETOOTH" />
|
<uses-permission android:name="android.permission.BLUETOOTH" />
|
||||||
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
|
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
|
||||||
<uses-feature android:name="android.hardware.bluetooth_le" android:required="true" />
|
<uses-feature android:name="android.hardware.bluetooth_le" android:required="true" />
|
||||||
<application android:icon="@drawable/sharee" android:label="Mein konrad" android:allowBackup="false"></application>
|
<application android:icon="@drawable/sharee" android:label="Meinkonrad" android:allowBackup="false"></application>
|
||||||
<meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="000000000000000000000000000000000000000" />
|
<meta-data android:name="com.google.android.geo.API_KEY" android:value="000000000000000000000000000000000000000" />
|
||||||
</manifest>
|
</manifest>
|
|
@ -1,4 +1,4 @@
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Runtime.CompilerServices;
|
using System.Runtime.CompilerServices;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
using Android.App;
|
using Android.App;
|
||||||
|
@ -7,11 +7,11 @@ using Xamarin.Forms;
|
||||||
// General Information about an assembly is controlled through the following
|
// General Information about an assembly is controlled through the following
|
||||||
// set of attributes. Change these attribute values to modify the information
|
// set of attributes. Change these attribute values to modify the information
|
||||||
// associated with an assembly.
|
// associated with an assembly.
|
||||||
[assembly: AssemblyTitle("TINK.Android")]
|
[assembly: AssemblyTitle("Meinkonrad.Android")]
|
||||||
[assembly: AssemblyDescription("")]
|
[assembly: AssemblyDescription("")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCompany("")]
|
[assembly: AssemblyCompany("")]
|
||||||
[assembly: AssemblyProduct("TINK.Android")]
|
[assembly: AssemblyProduct("Meinkonrad.Android")]
|
||||||
[assembly: AssemblyCopyright("Copyright © 2014")]
|
[assembly: AssemblyCopyright("Copyright © 2014")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
|
@ -40,6 +40,6 @@ using Xamarin.Forms;
|
||||||
[assembly: Application(Debuggable = false)]
|
[assembly: Application(Debuggable = false)]
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
[assembly: MetaData("com.google.android.maps.v2.API_KEY", Value = "000000000000000000000000000000000000000")]
|
[assembly: MetaData("com.google.android.geo.API_KEY", Value = "000000000000000000000000000000000000000")]
|
||||||
|
|
||||||
[assembly: ExportFont("Font Awesome 5 Free-Solid-900.otf", Alias = "FA-S")]
|
[assembly: ExportFont("Font Awesome 5 Free-Solid-900.otf", Alias = "FA-S")]
|
||||||
|
|
2165
Meinkonrad/TINK.Android/Resources/Resource.Designer.cs
generated
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 6.2 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 3.5 KiB |
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 9.5 KiB |
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 26 KiB |
|
@ -1,8 +1,4 @@
|
||||||
using System;
|
using Foundation;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
|
|
||||||
using Foundation;
|
|
||||||
using UIKit;
|
using UIKit;
|
||||||
using Xamarin.Forms;
|
using Xamarin.Forms;
|
||||||
|
|
||||||
|
|
|
@ -6,5 +6,9 @@
|
||||||
<array>
|
<array>
|
||||||
<string>$(AppIdentifierPrefix)com.TeilRad.sharee.bike</string>
|
<string>$(AppIdentifierPrefix)com.TeilRad.sharee.bike</string>
|
||||||
</array>
|
</array>
|
||||||
|
<key>com.apple.developer.associated-domains</key>
|
||||||
|
<array>
|
||||||
|
<string>applinks:sharee.bike</string>
|
||||||
|
</array>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
<plist version="1.0">
|
<plist version="1.0">
|
||||||
<dict>
|
<dict>
|
||||||
|
@ -27,9 +27,9 @@
|
||||||
<key>UILaunchStoryboardName</key>
|
<key>UILaunchStoryboardName</key>
|
||||||
<string>LaunchScreen</string>
|
<string>LaunchScreen</string>
|
||||||
<key>XSLaunchImageAssets</key>
|
<key>XSLaunchImageAssets</key>
|
||||||
<string>Resources/Media.xcassets/LaunchImages.launchimage</string>
|
<string>Media.xcassets/LaunchImages.launchimage</string>
|
||||||
<key>CFBundleName</key>
|
<key>CFBundleName</key>
|
||||||
<string>TINK</string>
|
<string>Meinkonrad</string>
|
||||||
<key>XSAppIconAssets</key>
|
<key>XSAppIconAssets</key>
|
||||||
<string>Media.xcassets/AppIcons.appiconset</string>
|
<string>Media.xcassets/AppIcons.appiconset</string>
|
||||||
<key>NSBluetoothAlwaysUsageDescription</key>
|
<key>NSBluetoothAlwaysUsageDescription</key>
|
||||||
|
@ -49,8 +49,8 @@
|
||||||
<key>CFBundleDisplayName</key>
|
<key>CFBundleDisplayName</key>
|
||||||
<string>Mein konrad</string>
|
<string>Mein konrad</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>254</string>
|
<string>267</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>3.0.254</string>
|
<string>3.0.267</string>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
After Width: | Height: | Size: 294 KiB |
|
@ -1,131 +1,275 @@
|
||||||
{
|
{
|
||||||
"images": [
|
"images": [
|
||||||
{
|
{
|
||||||
"scale": "2x",
|
"filename": "Icon-40.png",
|
||||||
"size": "20x20",
|
"size": "20x20",
|
||||||
"idiom": "iphone",
|
"scale": "2x",
|
||||||
"filename": "40.png"
|
"idiom": "iphone"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"scale": "3x",
|
"filename": "Icon-60.png",
|
||||||
"size": "20x20",
|
"size": "20x20",
|
||||||
"idiom": "iphone",
|
|
||||||
"filename": "60.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"scale": "2x",
|
|
||||||
"size": "29x29",
|
|
||||||
"idiom": "iphone",
|
|
||||||
"filename": "58.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"scale": "3x",
|
"scale": "3x",
|
||||||
|
"idiom": "iphone"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename": "Icon-58.png",
|
||||||
"size": "29x29",
|
"size": "29x29",
|
||||||
"idiom": "iphone",
|
|
||||||
"filename": "87.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"size": "40x40",
|
"idiom": "iphone"
|
||||||
"idiom": "iphone",
|
|
||||||
"filename": "801.png"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"filename": "Icon-87.png",
|
||||||
|
"size": "29x29",
|
||||||
"scale": "3x",
|
"scale": "3x",
|
||||||
"size": "40x40",
|
"idiom": "iphone"
|
||||||
"idiom": "iphone",
|
|
||||||
"filename": "120.png"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"filename": "Icon-80.png",
|
||||||
|
"size": "40x40",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
|
"idiom": "iphone"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename": "Icon-120.png",
|
||||||
|
"size": "40x40",
|
||||||
|
"scale": "3x",
|
||||||
|
"idiom": "iphone"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename": "Icon-120-1.png",
|
||||||
"size": "60x60",
|
"size": "60x60",
|
||||||
"idiom": "iphone",
|
"scale": "2x",
|
||||||
"filename": "1201.png"
|
"idiom": "iphone"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"scale": "3x",
|
"filename": "Icon-180.png",
|
||||||
"size": "60x60",
|
"size": "60x60",
|
||||||
"idiom": "iphone",
|
"scale": "3x",
|
||||||
"filename": "180.png"
|
"idiom": "iphone"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"scale": "1x",
|
"filename": "Icon-20.png",
|
||||||
"size": "20x20",
|
"size": "20x20",
|
||||||
"idiom": "ipad",
|
"scale": "1x",
|
||||||
"filename": "20.png"
|
"idiom": "ipad"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"scale": "2x",
|
"filename": "Icon-40-1.png",
|
||||||
"size": "20x20",
|
"size": "20x20",
|
||||||
"idiom": "ipad",
|
"scale": "2x",
|
||||||
"filename": "401.png"
|
"idiom": "ipad"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"scale": "1x",
|
"filename": "Icon-29.png",
|
||||||
"size": "29x29",
|
"size": "29x29",
|
||||||
"idiom": "ipad",
|
|
||||||
"filename": "29.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"scale": "2x",
|
|
||||||
"size": "29x29",
|
|
||||||
"idiom": "ipad",
|
|
||||||
"filename": "581.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"scale": "1x",
|
"scale": "1x",
|
||||||
"size": "40x40",
|
"idiom": "ipad"
|
||||||
"idiom": "ipad",
|
|
||||||
"filename": "402.png"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"filename": "Icon-58-1.png",
|
||||||
|
"size": "29x29",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"size": "40x40",
|
"idiom": "ipad"
|
||||||
"idiom": "ipad",
|
|
||||||
"filename": "80.png"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"filename": "Icon-40-2.png",
|
||||||
|
"size": "40x40",
|
||||||
|
"scale": "1x",
|
||||||
|
"idiom": "ipad"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename": "Icon-80-1.png",
|
||||||
|
"size": "40x40",
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
|
"idiom": "ipad"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename": "Icon-167.png",
|
||||||
"size": "83.5x83.5",
|
"size": "83.5x83.5",
|
||||||
"idiom": "ipad",
|
|
||||||
"filename": "167.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"scale": "1x",
|
|
||||||
"size": "76x76",
|
|
||||||
"idiom": "ipad",
|
|
||||||
"filename": "76.png"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"scale": "2x",
|
"scale": "2x",
|
||||||
"size": "76x76",
|
"idiom": "ipad"
|
||||||
"idiom": "ipad",
|
|
||||||
"filename": "152.png"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"filename": "Icon-76.png",
|
||||||
|
"size": "76x76",
|
||||||
"scale": "1x",
|
"scale": "1x",
|
||||||
|
"idiom": "ipad"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename": "Icon-152.png",
|
||||||
|
"size": "76x76",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "ipad"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename": "App-Icon-MeinKonrad_1024.png",
|
||||||
"size": "1024x1024",
|
"size": "1024x1024",
|
||||||
"idiom": "ios-marketing",
|
"scale": "1x",
|
||||||
"filename": "1024-1.png"
|
"idiom": "ios-marketing"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"scale": "2x",
|
|
||||||
"size": "60x60",
|
"size": "60x60",
|
||||||
|
"scale": "2x",
|
||||||
"idiom": "car"
|
"idiom": "car"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"size": "60x60",
|
||||||
"scale": "3x",
|
"scale": "3x",
|
||||||
"size": "60x60",
|
|
||||||
"idiom": "car"
|
"idiom": "car"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"scale": "1x",
|
"role": "notificationCenter",
|
||||||
|
"size": "24x24",
|
||||||
|
"subtype": "38mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "notificationCenter",
|
||||||
|
"size": "27.5x27.5",
|
||||||
|
"subtype": "42mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "notificationCenter",
|
||||||
|
"size": "33x33",
|
||||||
|
"subtype": "45mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "companionSettings",
|
||||||
|
"size": "29x29",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "companionSettings",
|
||||||
|
"size": "29x29",
|
||||||
|
"scale": "3x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "appLauncher",
|
||||||
|
"size": "40x40",
|
||||||
|
"subtype": "38mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "appLauncher",
|
||||||
|
"size": "44x44",
|
||||||
|
"subtype": "40mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "appLauncher",
|
||||||
|
"size": "46x46",
|
||||||
|
"subtype": "41mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "appLauncher",
|
||||||
|
"size": "50x50",
|
||||||
|
"subtype": "44mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "appLauncher",
|
||||||
|
"size": "51x51",
|
||||||
|
"subtype": "45mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "quickLook",
|
||||||
|
"size": "86x86",
|
||||||
|
"subtype": "38mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "quickLook",
|
||||||
|
"size": "98x98",
|
||||||
|
"subtype": "42mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "quickLook",
|
||||||
|
"size": "108x108",
|
||||||
|
"subtype": "44mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"role": "quickLook",
|
||||||
|
"size": "117x117",
|
||||||
|
"subtype": "45mm",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "watch"
|
||||||
|
},
|
||||||
|
{
|
||||||
"size": "1024x1024",
|
"size": "1024x1024",
|
||||||
"idiom": "watch-marketing",
|
"scale": "1x",
|
||||||
"filename": "10241.png"
|
"idiom": "watch-marketing"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size": "16x16",
|
||||||
|
"scale": "1x",
|
||||||
|
"idiom": "mac"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size": "16x16",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "mac"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size": "32x32",
|
||||||
|
"scale": "1x",
|
||||||
|
"idiom": "mac"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size": "32x32",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "mac"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size": "128x128",
|
||||||
|
"scale": "1x",
|
||||||
|
"idiom": "mac"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size": "128x128",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "mac"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size": "256x256",
|
||||||
|
"scale": "1x",
|
||||||
|
"idiom": "mac"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size": "256x256",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "mac"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size": "512x512",
|
||||||
|
"scale": "1x",
|
||||||
|
"idiom": "mac"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"size": "512x512",
|
||||||
|
"scale": "2x",
|
||||||
|
"idiom": "mac"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"properties": {},
|
|
||||||
"info": {
|
"info": {
|
||||||
"version": 1,
|
"version": 1,
|
||||||
"author": "xcode"
|
"author": "xcode"
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
<OutputType>Exe</OutputType>
|
<OutputType>Exe</OutputType>
|
||||||
<RootNamespace>TINK.iOS</RootNamespace>
|
<RootNamespace>TINK.iOS</RootNamespace>
|
||||||
<IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
|
<IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
|
||||||
<AssemblyName>TINK.iOS</AssemblyName>
|
<AssemblyName>Meinkonrad.iOS</AssemblyName>
|
||||||
<NuGetPackageImportStamp>
|
<NuGetPackageImportStamp>
|
||||||
</NuGetPackageImportStamp>
|
</NuGetPackageImportStamp>
|
||||||
<ReleaseVersion>3.0</ReleaseVersion>
|
<ReleaseVersion>3.0</ReleaseVersion>
|
||||||
|
@ -27,8 +27,8 @@
|
||||||
<MtouchArch>i386, x86_64</MtouchArch>
|
<MtouchArch>i386, x86_64</MtouchArch>
|
||||||
<MtouchLink>None</MtouchLink>
|
<MtouchLink>None</MtouchLink>
|
||||||
<MtouchDebug>true</MtouchDebug>
|
<MtouchDebug>true</MtouchDebug>
|
||||||
<CodesignProvision>VS: com.tink.fapp Development</CodesignProvision>
|
<CodesignProvision>VS: com.TeilRad.Meinkonrad Development</CodesignProvision>
|
||||||
<CodesignKey>iPhone Developer: Rainer Guempelein (9K8PNC2YM8)</CodesignKey>
|
<CodesignKey>Apple Development: Oliver Hauff (947JH7MS9L)</CodesignKey>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' ">
|
||||||
<DebugType>none</DebugType>
|
<DebugType>none</DebugType>
|
||||||
|
@ -40,8 +40,8 @@
|
||||||
<MtouchLink>None</MtouchLink>
|
<MtouchLink>None</MtouchLink>
|
||||||
<MtouchArch>i386, x86_64</MtouchArch>
|
<MtouchArch>i386, x86_64</MtouchArch>
|
||||||
<ConsolePause>false</ConsolePause>
|
<ConsolePause>false</ConsolePause>
|
||||||
<CodesignProvision>VS: com.tink.fapp Development</CodesignProvision>
|
<CodesignProvision>VS: com.TeilRad.Meinkonrad Development</CodesignProvision>
|
||||||
<CodesignKey>iPhone Developer: Rainer Guempelein (9K8PNC2YM8)</CodesignKey>
|
<CodesignKey>Apple Development: Oliver Hauff (947JH7MS9L)</CodesignKey>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhone' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhone' ">
|
||||||
<DebugSymbols>true</DebugSymbols>
|
<DebugSymbols>true</DebugSymbols>
|
||||||
|
@ -53,12 +53,12 @@
|
||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
<ConsolePause>false</ConsolePause>
|
<ConsolePause>false</ConsolePause>
|
||||||
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
||||||
<CodesignKey>Apple Development: Oliver Hauff (8SZ7J9P24J)</CodesignKey>
|
<CodesignKey>Apple Development: Oliver Hauff (947JH7MS9L)</CodesignKey>
|
||||||
<MtouchDebug>true</MtouchDebug>
|
<MtouchDebug>true</MtouchDebug>
|
||||||
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
||||||
<CodesignProvision>VS: WildCard Development</CodesignProvision>
|
<CodesignProvision>VS: com.TeilRad.Meinkonrad Development</CodesignProvision>
|
||||||
<MtouchLink>SdkOnly</MtouchLink>
|
<MtouchLink>None</MtouchLink>
|
||||||
<AssemblyName>Meinkonrad.iOS</AssemblyName>
|
<MtouchInterpreter>-all</MtouchInterpreter>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
|
||||||
<DebugType>none</DebugType>
|
<DebugType>none</DebugType>
|
||||||
|
@ -69,15 +69,14 @@
|
||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
||||||
<ConsolePause>false</ConsolePause>
|
<ConsolePause>false</ConsolePause>
|
||||||
<CodesignKey>Apple Distribution: TeilRad GmbH (LXJD6URCHR)</CodesignKey>
|
<CodesignKey>Apple Development: Oliver Hauff (947JH7MS9L)</CodesignKey>
|
||||||
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
||||||
<IpaIncludeArtwork>
|
<IpaIncludeArtwork>
|
||||||
</IpaIncludeArtwork>
|
</IpaIncludeArtwork>
|
||||||
<CrashReportingApiKey>
|
<CrashReportingApiKey>
|
||||||
</CrashReportingApiKey>
|
</CrashReportingApiKey>
|
||||||
<MtouchLink>SdkOnly</MtouchLink>
|
<MtouchLink>SdkOnly</MtouchLink>
|
||||||
<CodesignProvision>Meinkonrad to App Store 2</CodesignProvision>
|
<CodesignProvision>VS: com.TeilRad.Meinkonrad Development</CodesignProvision>
|
||||||
<AssemblyName>Meinkonrad.iOS</AssemblyName>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Ad-Hoc|iPhone' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Ad-Hoc|iPhone' ">
|
||||||
<DebugType>none</DebugType>
|
<DebugType>none</DebugType>
|
||||||
|
@ -89,13 +88,12 @@
|
||||||
<ConsolePause>False</ConsolePause>
|
<ConsolePause>False</ConsolePause>
|
||||||
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
||||||
<BuildIpa>True</BuildIpa>
|
<BuildIpa>True</BuildIpa>
|
||||||
<CodesignProvision>VS: com.tink.fapp Development</CodesignProvision>
|
<CodesignProvision>VS: com.TeilRad.Meinkonrad Development</CodesignProvision>
|
||||||
<CodesignKey>iPhone Developer: Rainer Guempelein (9K8PNC2YM8)</CodesignKey>
|
<CodesignKey>Apple Development: Oliver Hauff (947JH7MS9L)</CodesignKey>
|
||||||
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
||||||
<MtouchNoSymbolStrip>
|
<MtouchNoSymbolStrip>
|
||||||
</MtouchNoSymbolStrip>
|
</MtouchNoSymbolStrip>
|
||||||
<MtouchLink>SdkOnly</MtouchLink>
|
<MtouchLink>SdkOnly</MtouchLink>
|
||||||
<AssemblyName>Meinkonrad.iOS</AssemblyName>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'AppStore|iPhone' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'AppStore|iPhone' ">
|
||||||
<DebugType>none</DebugType>
|
<DebugType>none</DebugType>
|
||||||
|
@ -106,11 +104,10 @@
|
||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
<ConsolePause>False</ConsolePause>
|
<ConsolePause>False</ConsolePause>
|
||||||
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
<MtouchArch>ARMv7, ARM64</MtouchArch>
|
||||||
<CodesignProvision>VS: com.tink.fapp Development</CodesignProvision>
|
<CodesignProvision>VS: com.TeilRad.Meinkonrad Development</CodesignProvision>
|
||||||
<CodesignKey>iPhone Developer: Rainer Guempelein (9K8PNC2YM8)</CodesignKey>
|
<CodesignKey>Apple Development: Oliver Hauff (947JH7MS9L)</CodesignKey>
|
||||||
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
||||||
<MtouchLink>SdkOnly</MtouchLink>
|
<MtouchLink>SdkOnly</MtouchLink>
|
||||||
<AssemblyName>Meinkonrad.iOS</AssemblyName>
|
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' ">
|
<PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' ">
|
||||||
<AppExtensionDebugBundleId />
|
<AppExtensionDebugBundleId />
|
||||||
|
@ -118,7 +115,7 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.Bcl.Build" Version="1.0.21" />
|
<PackageReference Include="Microsoft.Bcl.Build" Version="1.0.21" />
|
||||||
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
||||||
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.3" />
|
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.4" />
|
||||||
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
||||||
<PackageReference Include="MonkeyCache">
|
<PackageReference Include="MonkeyCache">
|
||||||
<Version>1.5.2</Version>
|
<Version>1.5.2</Version>
|
||||||
|
@ -195,7 +192,7 @@
|
||||||
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
||||||
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
||||||
<PackageReference Include="Xamarin.CommunityToolkit">
|
<PackageReference Include="Xamarin.CommunityToolkit">
|
||||||
<Version>1.2.0</Version>
|
<Version>1.3.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Essentials">
|
<PackageReference Include="Xamarin.Essentials">
|
||||||
<Version>1.7.0</Version>
|
<Version>1.7.0</Version>
|
||||||
|
@ -218,7 +215,7 @@
|
||||||
<Version>0.7.104</Version>
|
<Version>0.7.104</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms">
|
<PackageReference Include="Xamarin.Forms">
|
||||||
<Version>5.0.0.2125</Version>
|
<Version>5.0.0.2196</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
@ -235,18 +232,11 @@
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</None>
|
</None>
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
<ITunesArtwork Include="iTunesArtwork" />
|
|
||||||
<ITunesArtwork Include="iTunesArtwork@2x" />
|
|
||||||
<Compile Include="Device\AppInfo.cs" />
|
<Compile Include="Device\AppInfo.cs" />
|
||||||
<Compile Include="Device\ExternalBrowseService.cs" />
|
<Compile Include="Device\ExternalBrowseService.cs" />
|
||||||
<EmbeddedResource Include="Resources\Font Awesome 5 Free-Solid-900.otf" />
|
<EmbeddedResource Include="Resources\Font Awesome 5 Free-Solid-900.otf" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<BundleResource Include="Resources\Default-568h%402x.png" />
|
|
||||||
<BundleResource Include="Resources\Default-Portrait.png" />
|
|
||||||
<BundleResource Include="Resources\Default-Portrait%402x.png" />
|
|
||||||
<BundleResource Include="Resources\Default.png" />
|
|
||||||
<BundleResource Include="Resources\Default%402x.png" />
|
|
||||||
<BundleResource Include="Resources\Icon-60%403x.png" />
|
<BundleResource Include="Resources\Icon-60%403x.png" />
|
||||||
<BundleResource Include="Resources\Icon-Small%402x.png" />
|
<BundleResource Include="Resources\Icon-Small%402x.png" />
|
||||||
<BundleResource Include="Resources\Icon-Small%403x.png" />
|
<BundleResource Include="Resources\Icon-Small%403x.png" />
|
||||||
|
@ -290,60 +280,6 @@
|
||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\10241.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\120.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\1201.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\152.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\167.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\180.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\20.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\29.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\40.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\401.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\402.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\58.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\581.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\60.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\76.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\80.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\801.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\87.png">
|
|
||||||
<Visible>false</Visible>
|
|
||||||
</ImageAsset>
|
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Contents.json">
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Contents.json">
|
||||||
<Visible>false</Visible>
|
<Visible>false</Visible>
|
||||||
</ImageAsset>
|
</ImageAsset>
|
||||||
|
@ -1484,9 +1420,58 @@
|
||||||
<ImageAsset Include="Media.xcassets\Open_Red.imageset\StationMarkerOpenRed.pdf">
|
<ImageAsset Include="Media.xcassets\Open_Red.imageset\StationMarkerOpenRed.pdf">
|
||||||
<Visible>false</Visible>
|
<Visible>false</Visible>
|
||||||
</ImageAsset>
|
</ImageAsset>
|
||||||
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\1024-1.png">
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-40.png">
|
||||||
<Visible>false</Visible>
|
<Visible>false</Visible>
|
||||||
</ImageAsset>
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-60.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-58.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-87.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-80.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-120.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-120-1.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-180.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-20.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-40-1.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-29.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-58-1.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-40-2.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-80-1.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-76.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-152.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\Icon-167.png">
|
||||||
|
<Visible>false</Visible>
|
||||||
|
</ImageAsset>
|
||||||
|
<ImageAsset Include="Media.xcassets\AppIcons.appiconset\App-Icon-MeinKonrad_1024.png" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Folder Include="Media.xcassets\01_Blue.imageset\" />
|
<Folder Include="Media.xcassets\01_Blue.imageset\" />
|
||||||
|
@ -1614,6 +1599,10 @@
|
||||||
<Folder Include="Media.xcassets\Open_LightBlue.imageset\" />
|
<Folder Include="Media.xcassets\Open_LightBlue.imageset\" />
|
||||||
<Folder Include="Media.xcassets\Open_Red.imageset\" />
|
<Folder Include="Media.xcassets\Open_Red.imageset\" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ITunesArtwork Include="iTunesArtwork" />
|
||||||
|
<ITunesArtwork Include="iTunesArtwork%402x" />
|
||||||
|
</ItemGroup>
|
||||||
<Import Project="..\TINK\Meinkonrad.projitems" Label="Shared" Condition="Exists('..\TINK\Meinkonrad.projitems')" />
|
<Import Project="..\TINK\Meinkonrad.projitems" Label="Shared" Condition="Exists('..\TINK\Meinkonrad.projitems')" />
|
||||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
||||||
</Project>
|
</Project>
|
|
@ -5,11 +5,11 @@ using Xamarin.Forms;
|
||||||
// General Information about an assembly is controlled through the following
|
// General Information about an assembly is controlled through the following
|
||||||
// set of attributes. Change these attribute values to modify the information
|
// set of attributes. Change these attribute values to modify the information
|
||||||
// associated with an assembly.
|
// associated with an assembly.
|
||||||
[assembly: AssemblyTitle("TINK.iOS")]
|
[assembly: AssemblyTitle("Meinkonrad.iOS")]
|
||||||
[assembly: AssemblyDescription("")]
|
[assembly: AssemblyDescription("")]
|
||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCompany("")]
|
[assembly: AssemblyCompany("")]
|
||||||
[assembly: AssemblyProduct("TINK.iOS")]
|
[assembly: AssemblyProduct("Meinkonrad.iOS")]
|
||||||
[assembly: AssemblyCopyright("Copyright © 2020")]
|
[assembly: AssemblyCopyright("Copyright © 2020")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 26 KiB |
|
@ -21,7 +21,8 @@
|
||||||
<rect key="contentStretch" x="0.0" y="0.0" width="0.0" height="0.0"/>
|
<rect key="contentStretch" x="0.0" y="0.0" width="0.0" height="0.0"/>
|
||||||
</imageView>
|
</imageView>
|
||||||
</subviews>
|
</subviews>
|
||||||
<color key="backgroundColor" red="0.20392156862745098" green="0.4983606557377049180327868852459" blue="0.5016393442622950819672131147541" alpha="1" colorSpace="calibratedRGB"/>
|
<!--Color # -->
|
||||||
|
<color key="backgroundColor" red="1.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstItem="23" firstAttribute="centerY" secondItem="yd7-JS-zBw" secondAttribute="centerY" priority="1" id="39"/>
|
<constraint firstItem="23" firstAttribute="centerY" secondItem="yd7-JS-zBw" secondAttribute="centerY" priority="1" id="39"/>
|
||||||
<constraint firstItem="23" firstAttribute="centerX" secondItem="yd7-JS-zBw" secondAttribute="centerX" priority="1" id="41"/>
|
<constraint firstItem="23" firstAttribute="centerX" secondItem="yd7-JS-zBw" secondAttribute="centerX" priority="1" id="41"/>
|
||||||
|
|
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 104 KiB |
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 294 KiB |
|
@ -15,7 +15,6 @@ using MonkeyCache.FileStore;
|
||||||
using Plugin.Connectivity;
|
using Plugin.Connectivity;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using TINK.Model.Settings;
|
using TINK.Model.Settings;
|
||||||
using Plugin.Permissions;
|
|
||||||
using TINK.Services.BluetoothLock.Crypto;
|
using TINK.Services.BluetoothLock.Crypto;
|
||||||
using TINK.Model.Services.Geolocation;
|
using TINK.Model.Services.Geolocation;
|
||||||
using TINK.Services;
|
using TINK.Services;
|
||||||
|
@ -83,8 +82,8 @@ namespace TINK
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
settings = new Model.Settings.Settings(
|
settings = new Model.Settings.Settings(
|
||||||
JsonSettingsDictionary.GetGroupFilterMapPage(settingsJSON),
|
JsonSettingsDictionary.GetGroupFilterMapPage(settingsJSON) ?? GroupFilterHelper.GetMapPageFilterDefaults, // Activate map filtering for meinkonrad
|
||||||
JsonSettingsDictionary.GetGoupFilterSettings(settingsJSON),
|
JsonSettingsDictionary.GetGoupFilterSettings(settingsJSON) ?? GroupFilterHelper.GetSettingsFilterDefaults,// Activate map filtering for meinkonrad
|
||||||
JsonSettingsDictionary.GetCopriHostUri(settingsJSON),
|
JsonSettingsDictionary.GetCopriHostUri(settingsJSON),
|
||||||
JsonSettingsDictionary.GetPollingParameters(settingsJSON),
|
JsonSettingsDictionary.GetPollingParameters(settingsJSON),
|
||||||
JsonSettingsDictionary.GetMinimumLoggingLevel(settingsJSON),
|
JsonSettingsDictionary.GetMinimumLoggingLevel(settingsJSON),
|
||||||
|
@ -94,6 +93,7 @@ namespace TINK
|
||||||
JsonSettingsDictionary.GetConnectTimeout(settingsJSON),
|
JsonSettingsDictionary.GetConnectTimeout(settingsJSON),
|
||||||
JsonSettingsDictionary.GetActiveGeolocationService(settingsJSON),
|
JsonSettingsDictionary.GetActiveGeolocationService(settingsJSON),
|
||||||
JsonSettingsDictionary.GetCenterMapToCurrentLocation(settingsJSON),
|
JsonSettingsDictionary.GetCenterMapToCurrentLocation(settingsJSON),
|
||||||
|
Xamarin.Forms.GoogleMaps.MapSpan.FromCenterAndRadius(new Xamarin.Forms.GoogleMaps.Position(47.680, 9.180), Xamarin.Forms.GoogleMaps.Distance.FromKilometers(2.9)),
|
||||||
JsonSettingsDictionary.GetLogToExternalFolder(settingsJSON),
|
JsonSettingsDictionary.GetLogToExternalFolder(settingsJSON),
|
||||||
JsonSettingsDictionary.GetIsSiteCachingOn(settingsJSON),
|
JsonSettingsDictionary.GetIsSiteCachingOn(settingsJSON),
|
||||||
JsonSettingsDictionary.GetActiveTheme(settingsJSON) ?? typeof(Themes.Konrad).FullName);
|
JsonSettingsDictionary.GetActiveTheme(settingsJSON) ?? typeof(Themes.Konrad).FullName);
|
||||||
|
@ -145,7 +145,7 @@ namespace TINK
|
||||||
m_oModelRoot = new TinkApp(
|
m_oModelRoot = new TinkApp(
|
||||||
settings,
|
settings,
|
||||||
store, // Manages user account
|
store, // Manages user account
|
||||||
(isConnected, activeUri, sessionCookie, mail, expiresAfter) => ConnectorFactory.Create(isConnected, activeUri, $"sharee.bike/{appInfoService.Version}", sessionCookie, mail, expiresAfter),
|
(isConnected, activeUri, sessionCookie, mail, expiresAfter) => ConnectorFactory.Create(isConnected, activeUri, new Repository.AppContextInfo("mkef9BuN", "Meinkonrad", appInfoService.Version), sessionCookie, mail, expiresAfter),
|
||||||
GeolocationServicesContainer,
|
GeolocationServicesContainer,
|
||||||
null, /* locksService */
|
null, /* locksService */
|
||||||
DependencyService.Get<ISmartDevice>(),
|
DependencyService.Get<ISmartDevice>(),
|
||||||
|
@ -255,6 +255,30 @@ namespace TINK
|
||||||
.CreateLogger();
|
.CreateLogger();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <param name="uri">The URI for the request.</param>
|
||||||
|
/// <summary>Overriden to respond when the user initiates an app link request.</summary>
|
||||||
|
protected override void OnAppLinkRequestReceived(Uri uri)
|
||||||
|
{
|
||||||
|
base.OnAppLinkRequestReceived(uri);
|
||||||
|
if (uri.Host.ToLower() == "sharee.bike")
|
||||||
|
{
|
||||||
|
// Input e.g. sharee.bike/sharee/?lat=49.921&long=32.51
|
||||||
|
Array segments = Array.ConvertAll(uri.Segments, segment => segment.Replace("/", "")).Skip(1).ToArray();
|
||||||
|
if (uri.Query.Length > 0)
|
||||||
|
{
|
||||||
|
Dictionary<string, string> queryDict = uri.Query
|
||||||
|
.Substring(1)
|
||||||
|
.Split("&")
|
||||||
|
.Select(query => query.Split('='))
|
||||||
|
.ToDictionary(query => query.FirstOrDefault(), query => query.Skip(1).FirstOrDefault());
|
||||||
|
}
|
||||||
|
// segments == ["sharee"]
|
||||||
|
// queryDict == [{["lat", "49.921"]}], {["long", "32.51"]}]
|
||||||
|
// => Navigate and pass params depending on linkinput
|
||||||
|
// If no custom navigation is configured, the app just opens as if the user opened it
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary> Gets the current logging level.</summary>
|
/// <summary> Gets the current logging level.</summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
private static LogEventLevel GetCurrentLogEventLevel()
|
private static LogEventLevel GetCurrentLogEventLevel()
|
||||||
|
@ -283,7 +307,7 @@ namespace TINK
|
||||||
if (_PermissionsService != null)
|
if (_PermissionsService != null)
|
||||||
return _PermissionsService;
|
return _PermissionsService;
|
||||||
|
|
||||||
_PermissionsService = new Services.Permissions.Plugin.Permissions();
|
_PermissionsService = new Services.Permissions.Essentials.Permissions();
|
||||||
return _PermissionsService;
|
return _PermissionsService;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
<br />Version ACTIVE_APPNAME: <b>CURRENT_VERSION_TINKAPP</b>.
|
<br />Version ACTIVE_APPNAME: <b>CURRENT_VERSION_TINKAPP</b>.
|
||||||
<div class="content_title2">Entwickler</div>
|
<div class="content_title2">Entwickler</div>
|
||||||
<div style=""></div>
|
<div style=""></div>
|
||||||
<br />Programmierung ACTIVE_APPNAME: O. Hauff, o.hauff@sharee.bike.<br />
|
<br />Programmierung ACTIVE_APPNAME: O. Hauff, app@sharee.bike<br />
|
||||||
<div class="content_title2">Verwendete Bibliotheken</div>
|
<div class="content_title2">Verwendete Bibliotheken</div>
|
||||||
<div style=""></div>
|
<div style=""></div>
|
||||||
<br /><table>
|
<br /><table>
|
||||||
|
|
|
@ -149,7 +149,7 @@ namespace TINK.View.Account
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -37,6 +37,7 @@
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
|
<RowDefinition Height="Auto" />
|
||||||
</Grid.RowDefinitions>
|
</Grid.RowDefinitions>
|
||||||
<Grid.ColumnDefinitions>
|
<Grid.ColumnDefinitions>
|
||||||
<ColumnDefinition Width="Auto" />
|
<ColumnDefinition Width="Auto" />
|
||||||
|
@ -84,6 +85,12 @@
|
||||||
IsVisible="{Binding TariffDescription.AboEuroPerMonth, Converter={StaticResource Label_Converter}}"
|
IsVisible="{Binding TariffDescription.AboEuroPerMonth, Converter={StaticResource Label_Converter}}"
|
||||||
Grid.Row="4"
|
Grid.Row="4"
|
||||||
Grid.Column="1"/>
|
Grid.Column="1"/>
|
||||||
|
<Label
|
||||||
|
TextType="Html"
|
||||||
|
Text="{Binding TariffDescription.OperatorAgb}"
|
||||||
|
IsVisible="{Binding TariffDescription.OperatorAgb, Converter={StaticResource Label_Converter}}"
|
||||||
|
Grid.Row="5"
|
||||||
|
Grid.ColumnSpan="3"/>
|
||||||
</Grid>
|
</Grid>
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
</ContentView>
|
</ContentView>
|
||||||
|
|
|
@ -49,6 +49,7 @@
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
<RowDefinition Height="Auto" />
|
<RowDefinition Height="Auto" />
|
||||||
|
<RowDefinition Height="Auto" />
|
||||||
</Grid.RowDefinitions>
|
</Grid.RowDefinitions>
|
||||||
<Grid.ColumnDefinitions>
|
<Grid.ColumnDefinitions>
|
||||||
<ColumnDefinition Width="Auto" />
|
<ColumnDefinition Width="Auto" />
|
||||||
|
@ -96,6 +97,12 @@
|
||||||
IsVisible="{Binding TariffDescription.AboEuroPerMonth, Converter={StaticResource Label_Converter}}"
|
IsVisible="{Binding TariffDescription.AboEuroPerMonth, Converter={StaticResource Label_Converter}}"
|
||||||
Grid.Row="4"
|
Grid.Row="4"
|
||||||
Grid.Column="1"/>
|
Grid.Column="1"/>
|
||||||
|
<Label
|
||||||
|
TextType="Html"
|
||||||
|
Text="{Binding TariffDescription.OperatorAgb}"
|
||||||
|
IsVisible="{Binding TariffDescription.OperatorAgb, Converter={StaticResource Label_Converter}}"
|
||||||
|
Grid.Row="5"
|
||||||
|
Grid.ColumnSpan="3"/>
|
||||||
</Grid>
|
</Grid>
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
</ContentView>
|
</ContentView>
|
||||||
|
|
|
@ -14,58 +14,73 @@
|
||||||
<Frame>
|
<Frame>
|
||||||
<StackLayout
|
<StackLayout
|
||||||
Orientation="Vertical">
|
Orientation="Vertical">
|
||||||
<Label
|
<!-- Title bar stack layout-->
|
||||||
HorizontalOptions="Center"
|
<StackLayout
|
||||||
FontAttributes="Bold"
|
Orientation="Vertical">
|
||||||
Text="{Binding StationDetailText}"/>
|
<Label
|
||||||
<ListView
|
HorizontalOptions="Center"
|
||||||
x:Name="BikesAtStationListView"
|
FontAttributes="Bold"
|
||||||
SelectionMode="None"
|
TextColor="{DynamicResource primary-back-title-color}"
|
||||||
SelectedItem="{Binding SelectedBike}"
|
Text="{Binding StationDetailText}"/>
|
||||||
IsEnabled="{Binding IsIdle}"
|
<BoxView
|
||||||
IsVisible="{Binding IsBikesListVisible}"
|
HeightRequest="1"
|
||||||
HasUnevenRows="True"
|
Color="{DynamicResource primary-back-title-color}"/>
|
||||||
ItemTemplate="{StaticResource bikeTemplateSelector}"/>
|
</StackLayout>
|
||||||
<Label
|
<!-- Center stack layout -->
|
||||||
|
<StackLayout
|
||||||
|
Orientation="Vertical"
|
||||||
|
VerticalOptions="CenterAndExpand">
|
||||||
|
<ListView
|
||||||
|
x:Name="BikesAtStationListView"
|
||||||
|
SelectionMode="None"
|
||||||
|
SelectedItem="{Binding SelectedBike}"
|
||||||
|
IsEnabled="{Binding IsIdle}"
|
||||||
|
IsVisible="{Binding IsBikesListVisible}"
|
||||||
|
HasUnevenRows="True"
|
||||||
|
ItemTemplate="{StaticResource bikeTemplateSelector}"/>
|
||||||
|
<Label
|
||||||
IsVisible="{Binding IsNoBikesAtStationVisible}"
|
IsVisible="{Binding IsNoBikesAtStationVisible}"
|
||||||
VerticalOptions="EndAndExpand"
|
|
||||||
Text="{Binding NoBikesAtStationText}"/>
|
Text="{Binding NoBikesAtStationText}"/>
|
||||||
<Label
|
</StackLayout>
|
||||||
TextType="Html"
|
<!-- Status bar stack layout-->
|
||||||
Text="{Binding ContactSupportHintText}">
|
<StackLayout
|
||||||
<Label.GestureRecognizers>
|
Orientation="Vertical">
|
||||||
<TapGestureRecognizer Command="{Binding ContactSupportClickedCommand}"/>
|
<Label
|
||||||
</Label.GestureRecognizers>
|
TextType="Html"
|
||||||
</Label>
|
Text="{Binding ContactSupportHintText}">
|
||||||
<Label
|
<Label.GestureRecognizers>
|
||||||
|
<TapGestureRecognizer Command="{Binding ContactSupportClickedCommand}"/>
|
||||||
|
</Label.GestureRecognizers>
|
||||||
|
</Label>
|
||||||
|
<Label
|
||||||
IsVisible="{Binding IsLoginRequiredHintVisible}"
|
IsVisible="{Binding IsLoginRequiredHintVisible}"
|
||||||
TextType="Html"
|
TextType="Html"
|
||||||
Text="{Binding LoginRequiredHintText}">
|
Text="{Binding LoginRequiredHintText}">
|
||||||
<Label.GestureRecognizers>
|
<Label.GestureRecognizers>
|
||||||
<TapGestureRecognizer Command="{Binding LoginRequiredHintClickedCommand}"/>
|
<TapGestureRecognizer Command="{Binding LoginRequiredHintClickedCommand}"/>
|
||||||
</Label.GestureRecognizers>
|
</Label.GestureRecognizers>
|
||||||
</Label>
|
</Label>
|
||||||
<StackLayout
|
<StackLayout
|
||||||
VerticalOptions="EndAndExpand"
|
Orientation="Horizontal">
|
||||||
Orientation="Horizontal">
|
<Label
|
||||||
<Label
|
HeightRequest="20"
|
||||||
HeightRequest="20"
|
Text="{Binding StatusInfoText}"
|
||||||
Text="{Binding StatusInfoText}"
|
VerticalOptions="Center"
|
||||||
VerticalOptions="Center"
|
HorizontalOptions="FillAndExpand"/>
|
||||||
HorizontalOptions="FillAndExpand"/>
|
<ActivityIndicator IsRunning="{Binding IsRunning}"
|
||||||
<ActivityIndicator IsRunning="{Binding IsRunning}"
|
IsVisible="{Binding IsRunning}"
|
||||||
IsVisible="{Binding IsRunning}"
|
HeightRequest="20"
|
||||||
HeightRequest="20"
|
VerticalOptions="CenterAndExpand"
|
||||||
VerticalOptions="CenterAndExpand"
|
HorizontalOptions="End">
|
||||||
HorizontalOptions="End">
|
<ActivityIndicator.WidthRequest>
|
||||||
<ActivityIndicator.WidthRequest>
|
<OnPlatform x:TypeArguments="x:Double" iOS="40" Android="40" WinPhone="40" />
|
||||||
<OnPlatform x:TypeArguments="x:Double" iOS="40" Android="40" WinPhone="40" />
|
</ActivityIndicator.WidthRequest>
|
||||||
</ActivityIndicator.WidthRequest>
|
<ActivityIndicator.Color>
|
||||||
<ActivityIndicator.Color>
|
<OnPlatform x:TypeArguments="Color"
|
||||||
<OnPlatform x:TypeArguments="Color"
|
iOS="#2499CE" WinPhone="#2499CE" />
|
||||||
iOS="#2499CE" WinPhone="#2499CE" />
|
</ActivityIndicator.Color>
|
||||||
</ActivityIndicator.Color>
|
</ActivityIndicator>
|
||||||
</ActivityIndicator>
|
</StackLayout>
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
</Frame>
|
</Frame>
|
||||||
|
|
|
@ -228,7 +228,10 @@ using TINK.View.MasterDetail;
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
||||||
#else
|
#else
|
||||||
public async Task<IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
/// <summary> Displays user feedback popup.</summary>
|
||||||
|
/// <param name="co2Saving"> Co2 saving information.</param>
|
||||||
|
/// <returns>User feedback.</returns>
|
||||||
|
public async Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup(co2Saving));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -88,7 +88,7 @@ namespace TINK.View.Contact
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if USEFLYOUT
|
#if USEFLYOUT
|
||||||
|
|
|
@ -114,7 +114,7 @@ namespace TINK.View.Contact
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if USEFLYOUT
|
#if USEFLYOUT
|
||||||
|
|
|
@ -12,11 +12,14 @@
|
||||||
<Grid.RowDefinitions>
|
<Grid.RowDefinitions>
|
||||||
<!-- Head and title row -->
|
<!-- Head and title row -->
|
||||||
<RowDefinition Height="auto"/>
|
<RowDefinition Height="auto"/>
|
||||||
|
<!--- Co2saving-->
|
||||||
|
<RowDefinition Height="auto"/>
|
||||||
<!--- checkbox and input elements-->
|
<!--- checkbox and input elements-->
|
||||||
<RowDefinition Height="*"/>
|
<RowDefinition Height="*"/>
|
||||||
<!--- ok button-->
|
<!--- ok button-->
|
||||||
<RowDefinition Height="auto"/>
|
<RowDefinition Height="auto"/>
|
||||||
</Grid.RowDefinitions>
|
</Grid.RowDefinitions>
|
||||||
|
<!-- Head and title -->
|
||||||
<Grid
|
<Grid
|
||||||
Padding="30"
|
Padding="30"
|
||||||
BackgroundColor="{DynamicResource primary-back-title-color}">
|
BackgroundColor="{DynamicResource primary-back-title-color}">
|
||||||
|
@ -34,7 +37,16 @@
|
||||||
</Image.Source>
|
</Image.Source>
|
||||||
</Image>
|
</Image>
|
||||||
</Grid>
|
</Grid>
|
||||||
<ScrollView Grid.Row="1">
|
<!-- Co2saving -->
|
||||||
|
<Frame
|
||||||
|
x:Name="Co2SavingFrame"
|
||||||
|
Grid.Row="1">
|
||||||
|
<Label
|
||||||
|
x:Name="Co2SavingLabel"
|
||||||
|
Text=""/>
|
||||||
|
</Frame>
|
||||||
|
<!-- Checkbox and input elements -->
|
||||||
|
<ScrollView Grid.Row="2">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Grid.RowDefinitions>
|
<Grid.RowDefinitions>
|
||||||
<RowDefinition Height="Auto"/>
|
<RowDefinition Height="Auto"/>
|
||||||
|
@ -77,8 +89,9 @@
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
</Grid>
|
</Grid>
|
||||||
</ScrollView>
|
</ScrollView>
|
||||||
|
<!-- Buttons -->
|
||||||
<Button
|
<Button
|
||||||
Grid.Row="2"
|
Grid.Row="3"
|
||||||
Clicked="OnOkClicked"
|
Clicked="OnOkClicked"
|
||||||
Text="OK"/>
|
Text="OK"/>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
|
@ -7,9 +7,15 @@ namespace TINK.View
|
||||||
[XamlCompilation(XamlCompilationOptions.Compile)]
|
[XamlCompilation(XamlCompilationOptions.Compile)]
|
||||||
public partial class FeedbackPopup : Popup<FeedbackPopup.Result>
|
public partial class FeedbackPopup : Popup<FeedbackPopup.Result>
|
||||||
{
|
{
|
||||||
public FeedbackPopup()
|
/// <summary> Constructs user feedback popup.</summary>
|
||||||
|
/// <param name="co2Saving"> Co2 saving information.</param>
|
||||||
|
public FeedbackPopup(string co2Saving = null)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
if (string.IsNullOrEmpty(co2Saving))
|
||||||
|
Co2SavingFrame.IsVisible = false;
|
||||||
|
else
|
||||||
|
Co2SavingLabel.Text = co2Saving;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override FeedbackPopup.Result GetLightDismissResult()
|
protected override FeedbackPopup.Result GetLightDismissResult()
|
||||||
|
|
|
@ -138,7 +138,7 @@ namespace TINK.View.FindBike
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
||||||
#else
|
#else
|
||||||
public async Task<IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
public async Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup(co2Saving));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -122,7 +122,7 @@ namespace TINK.View.Info.BikeInfo
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -116,7 +116,7 @@ namespace TINK.View.Login
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -4,7 +4,7 @@
|
||||||
xmlns:maps="clr-namespace:Xamarin.Forms.GoogleMaps;assembly=Xamarin.Forms.GoogleMaps"
|
xmlns:maps="clr-namespace:Xamarin.Forms.GoogleMaps;assembly=Xamarin.Forms.GoogleMaps"
|
||||||
xmlns:bindings="clr-namespace:Xamarin.Forms.GoogleMaps.Bindings;assembly=Xamarin.Forms.GoogleMaps.Bindings"
|
xmlns:bindings="clr-namespace:Xamarin.Forms.GoogleMaps.Bindings;assembly=Xamarin.Forms.GoogleMaps.Bindings"
|
||||||
xmlns:resources="clr-namespace:TINK.MultilingualResources;assembly=TINKLib"
|
xmlns:resources="clr-namespace:TINK.MultilingualResources;assembly=TINKLib"
|
||||||
x:Class="TINK.View.Map.MapPage"
|
x:Class="TINK.View.Map.MapPage"
|
||||||
Title="{x:Static resources:AppResources.MarkingMapPage}">
|
Title="{x:Static resources:AppResources.MarkingMapPage}">
|
||||||
<StackLayout>
|
<StackLayout>
|
||||||
<Grid
|
<Grid
|
||||||
|
@ -22,24 +22,24 @@
|
||||||
<Button
|
<Button
|
||||||
x:Name="TINKButton"
|
x:Name="TINKButton"
|
||||||
AutomationId ="FilterTINK_button"
|
AutomationId ="FilterTINK_button"
|
||||||
Text="TINK"
|
Text="{x:Static resources:AppResources.MarkingCargoBike}"
|
||||||
Command="{Binding OnToggleKonradToTink}"
|
Command="{Binding OnToggleKonradToTink}"
|
||||||
IsVisible="{Binding IsToggleVisible}"
|
IsVisible="{Binding IsToggleVisible}"
|
||||||
TextColor ="{Binding TinkColor}"
|
TextColor ="{Binding TinkColor}"
|
||||||
VerticalOptions="Start"
|
VerticalOptions="Start"
|
||||||
HorizontalOptions="StartAndExpand"
|
HorizontalOptions="StartAndExpand"
|
||||||
WidthRequest="80">
|
Padding="10">
|
||||||
</Button>
|
</Button>
|
||||||
<Button
|
<Button
|
||||||
x:Name="KonradButton"
|
x:Name="KonradButton"
|
||||||
AutomationId ="FilterKonrad_button"
|
AutomationId ="FilterKonrad_button"
|
||||||
Text="Konrad"
|
Text="{x:Static resources:AppResources.MarkingCityBike}"
|
||||||
Command="{Binding OnToggleTinkToKonrad}"
|
Command="{Binding OnToggleTinkToKonrad}"
|
||||||
IsVisible="{Binding IsToggleVisible}"
|
IsVisible="{Binding IsToggleVisible}"
|
||||||
TextColor="{Binding KonradColor}"
|
TextColor="{Binding KonradColor}"
|
||||||
VerticalOptions="Start"
|
VerticalOptions="Start"
|
||||||
HorizontalOptions="EndAndExpand"
|
HorizontalOptions="EndAndExpand"
|
||||||
WidthRequest="80">
|
Padding="10">
|
||||||
</Button>
|
</Button>
|
||||||
</Grid>
|
</Grid>
|
||||||
<StackLayout
|
<StackLayout
|
||||||
|
|
|
@ -21,6 +21,9 @@ namespace TINK.View.Map
|
||||||
/// <summary> View model to notify about whether page appears or hides. </summary>
|
/// <summary> View model to notify about whether page appears or hides. </summary>
|
||||||
private MapPageViewModel MapPageViewModel { get; set; }
|
private MapPageViewModel MapPageViewModel { get; set; }
|
||||||
|
|
||||||
|
/// <summary> Initialization status to ensure initialization logic is not called multiple times. </summary>
|
||||||
|
private bool isInitializationStarted = false;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Constructs map page instance.
|
/// Constructs map page instance.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -117,7 +120,7 @@ namespace TINK.View.Map
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if USEFLYOUT
|
#if USEFLYOUT
|
||||||
|
@ -131,6 +134,10 @@ namespace TINK.View.Map
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected async override void OnAppearing()
|
protected async override void OnAppearing()
|
||||||
{
|
{
|
||||||
|
// Don't repeat the initialization if it has been completed already.
|
||||||
|
if (isInitializationStarted) return;
|
||||||
|
isInitializationStarted = true;
|
||||||
|
|
||||||
// Pass reference to member Navigation to show bikes at station x dialog.
|
// Pass reference to member Navigation to show bikes at station x dialog.
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
@ -139,18 +146,11 @@ namespace TINK.View.Map
|
||||||
#if TRYNOTBACKSTYLE
|
#if TRYNOTBACKSTYLE
|
||||||
MapPageViewModel = new MapPageViewModel();
|
MapPageViewModel = new MapPageViewModel();
|
||||||
#else
|
#else
|
||||||
MapPageViewModel = new MapPageViewModel(
|
MapPageViewModel = CreateMapPageViewModel();
|
||||||
App.ModelRoot,
|
|
||||||
App.PermissionsService,
|
|
||||||
App.BluetoothService,
|
|
||||||
App.GeolocationServicesContainer.Active,
|
|
||||||
(mapspan) => MyMap.MoveToRegion(mapspan),
|
|
||||||
this,
|
|
||||||
Navigation);
|
|
||||||
#endif
|
#endif
|
||||||
} catch (Exception exception)
|
}
|
||||||
|
catch (Exception exception)
|
||||||
{
|
{
|
||||||
|
|
||||||
Log.ForContext<MapPage>().Error("Constructing map page view model failed. {Exception}", exception);
|
Log.ForContext<MapPage>().Error("Constructing map page view model failed. {Exception}", exception);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -171,15 +171,7 @@ namespace TINK.View.Map
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (Device.RuntimePlatform == Device.iOS)
|
ApplyCustomiOSStyling();
|
||||||
{
|
|
||||||
TINKButton.BackgroundColor = Color.LightGray;
|
|
||||||
TINKButton.BorderColor = Color.Black;
|
|
||||||
TINKButton.Margin = new Thickness(10, 10, 10, 10);
|
|
||||||
KonradButton.BackgroundColor = Color.LightGray;
|
|
||||||
KonradButton.BorderColor = Color.Black;
|
|
||||||
KonradButton.Margin = new Thickness(10, 10, 10, 10);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
catch (Exception exception)
|
catch (Exception exception)
|
||||||
{
|
{
|
||||||
|
@ -201,13 +193,9 @@ namespace TINK.View.Map
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
// Pre move and scanle maps to avoid initial display of map in Rome.
|
// Pre move and scanle maps to avoid initial display of map in Rome.
|
||||||
Log.ForContext<MapPage>().Verbose("Moving and scaling map.");
|
PremoveAndScaleMap();
|
||||||
MapPageViewModel.MoveAndScale(
|
|
||||||
(mapSpan) => MyMap.MoveToRegion(mapSpan),
|
|
||||||
App.ModelRoot.Uris.ActiveUri,
|
|
||||||
App.ModelRoot.GroupFilterMapPage);
|
|
||||||
}
|
}
|
||||||
catch(Exception exception)
|
catch (Exception exception)
|
||||||
{
|
{
|
||||||
// Continue because a map not beeing moved/ scaled is no reason for aborting startup.
|
// Continue because a map not beeing moved/ scaled is no reason for aborting startup.
|
||||||
Log.ForContext<MapPage>().Error("Moving and scaling map failed. {Exception}", exception);
|
Log.ForContext<MapPage>().Error("Moving and scaling map failed. {Exception}", exception);
|
||||||
|
@ -225,6 +213,49 @@ namespace TINK.View.Map
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Premoves the Map to a certain location.
|
||||||
|
/// </summary>
|
||||||
|
private void PremoveAndScaleMap()
|
||||||
|
{
|
||||||
|
Log.ForContext<MapPage>().Verbose("Moving and scaling map.");
|
||||||
|
MapPageViewModel.MoveAndScale(
|
||||||
|
(mapSpan) => MyMap.MoveToRegion(mapSpan),
|
||||||
|
App.ModelRoot.ActiveMapSpan);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Creates the Map Page's view model.
|
||||||
|
/// </summary>
|
||||||
|
private MapPageViewModel CreateMapPageViewModel()
|
||||||
|
{
|
||||||
|
Log.ForContext<MapPage>().Verbose("Constructing map page view model.");
|
||||||
|
return new MapPageViewModel(
|
||||||
|
App.ModelRoot,
|
||||||
|
App.PermissionsService,
|
||||||
|
App.BluetoothService,
|
||||||
|
App.GeolocationServicesContainer.Active,
|
||||||
|
(mapspan) => MyMap.MoveToRegion(mapspan),
|
||||||
|
this,
|
||||||
|
Navigation);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Applies iOS specific styling to branded Buttons.
|
||||||
|
/// </summary>
|
||||||
|
private void ApplyCustomiOSStyling()
|
||||||
|
{
|
||||||
|
if (Device.RuntimePlatform == Device.iOS)
|
||||||
|
{
|
||||||
|
TINKButton.BackgroundColor = Color.LightGray;
|
||||||
|
TINKButton.BorderColor = Color.Black;
|
||||||
|
TINKButton.Margin = new Thickness(10, 10, 10, 10);
|
||||||
|
KonradButton.BackgroundColor = Color.LightGray;
|
||||||
|
KonradButton.BorderColor = Color.Black;
|
||||||
|
KonradButton.Margin = new Thickness(10, 10, 10, 10);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Invoked when pages is closed/ hidden.
|
/// Invoked when pages is closed/ hidden.
|
||||||
/// Stops update process.
|
/// Stops update process.
|
||||||
|
|
|
@ -89,7 +89,10 @@ namespace TINK.View.MiniSurvey
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
||||||
#else
|
#else
|
||||||
public async Task<IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
/// <summary> Displays user feedback popup.</summary>
|
||||||
|
/// <param name="co2Saving"> Co2 saving information.</param>
|
||||||
|
/// <returns>User feedback.</returns>
|
||||||
|
public async Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup(co2Saving));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -9,41 +9,46 @@
|
||||||
<ResourceDictionary>
|
<ResourceDictionary>
|
||||||
<local_bike:BikeViewCellTemplateSelector x:Key="bikeTemplateSelector"/>
|
<local_bike:BikeViewCellTemplateSelector x:Key="bikeTemplateSelector"/>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
</ContentPage.Resources>
|
</ContentPage.Resources>
|
||||||
<ContentPage.Content>
|
<ContentPage.Content>
|
||||||
<Frame>
|
<Frame>
|
||||||
<StackLayout>
|
<StackLayout
|
||||||
<ListView
|
Orientation="Vertical">
|
||||||
x:Name="MyBikesListView"
|
<!-- Center stack layout -->
|
||||||
SelectionMode="None"
|
<StackLayout
|
||||||
SelectedItem="{Binding SelectedBike}"
|
VerticalOptions="CenterAndExpand"
|
||||||
IsEnabled="{Binding IsIdle}"
|
Orientation="Vertical">
|
||||||
IsVisible="{Binding IsBikesListVisible}"
|
<ListView
|
||||||
HasUnevenRows="True"
|
x:Name="MyBikesListView"
|
||||||
ItemTemplate="{StaticResource bikeTemplateSelector}"/>
|
SelectionMode="None"
|
||||||
<StackLayout
|
SelectedItem="{Binding SelectedBike}"
|
||||||
VerticalOptions="EndAndExpand"
|
IsEnabled="{Binding IsIdle}"
|
||||||
Orientation="Horizontal">
|
IsVisible="{Binding IsBikesListVisible}"
|
||||||
|
HasUnevenRows="True"
|
||||||
|
ItemTemplate="{StaticResource bikeTemplateSelector}"/>
|
||||||
<Label
|
<Label
|
||||||
IsVisible="{Binding IsNoBikesOccupiedVisible}"
|
IsVisible="{Binding IsNoBikesOccupiedVisible}"
|
||||||
VerticalOptions="StartAndExpand"
|
|
||||||
Text="{Binding NoBikesOccupiedText}"/>
|
Text="{Binding NoBikesOccupiedText}"/>
|
||||||
|
</StackLayout>
|
||||||
|
<!-- Status bar stack layout-->
|
||||||
|
<StackLayout
|
||||||
|
Orientation="Horizontal">
|
||||||
<Label
|
<Label
|
||||||
HeightRequest="20"
|
HeightRequest="20"
|
||||||
Text="{Binding StatusInfoText}"
|
Text="{Binding StatusInfoText}"
|
||||||
VerticalOptions="Center"
|
VerticalOptions="Center"
|
||||||
HorizontalOptions="FillAndExpand"/>
|
HorizontalOptions="FillAndExpand"/>
|
||||||
<ActivityIndicator IsRunning="{Binding IsRunning}"
|
<ActivityIndicator IsRunning="{Binding IsRunning}"
|
||||||
IsVisible="{Binding IsRunning}"
|
IsVisible="{Binding IsRunning}"
|
||||||
HeightRequest="20"
|
HeightRequest="20"
|
||||||
VerticalOptions="CenterAndExpand"
|
VerticalOptions="CenterAndExpand"
|
||||||
HorizontalOptions="End">
|
HorizontalOptions="End">
|
||||||
<ActivityIndicator.WidthRequest>
|
<ActivityIndicator.WidthRequest>
|
||||||
<OnPlatform x:TypeArguments="x:Double" iOS="40" Android="40" WinPhone="40" />
|
<OnPlatform x:TypeArguments="x:Double" iOS="40" Android="40" WinPhone="40" />
|
||||||
</ActivityIndicator.WidthRequest>
|
</ActivityIndicator.WidthRequest>
|
||||||
<ActivityIndicator.Color>
|
<ActivityIndicator.Color>
|
||||||
<OnPlatform x:TypeArguments="Color"
|
<OnPlatform x:TypeArguments="Color"
|
||||||
iOS="#2499CE" WinPhone="#2499CE" />
|
iOS="#2499CE" WinPhone="#2499CE" />
|
||||||
</ActivityIndicator.Color>
|
</ActivityIndicator.Color>
|
||||||
</ActivityIndicator>
|
</ActivityIndicator>
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
|
|
|
@ -20,6 +20,9 @@ namespace TINK.View.MyBikes
|
||||||
/// <summary> Refernce to view model. </summary>
|
/// <summary> Refernce to view model. </summary>
|
||||||
MyBikesPageViewModel m_oViewModel = null;
|
MyBikesPageViewModel m_oViewModel = null;
|
||||||
|
|
||||||
|
/// <summary> Initialization status to ensure initialization logic is not called multiple times. </summary>
|
||||||
|
private bool isInitializationStarted = false;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Constructs a my bikes page.
|
/// Constructs a my bikes page.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -33,6 +36,10 @@ namespace TINK.View.MyBikes
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected async override void OnAppearing()
|
protected async override void OnAppearing()
|
||||||
{
|
{
|
||||||
|
// Don't repeat the initialization if it has been completed already.
|
||||||
|
if (isInitializationStarted) return;
|
||||||
|
isInitializationStarted = true;
|
||||||
|
|
||||||
if (m_oViewModel != null)
|
if (m_oViewModel != null)
|
||||||
{
|
{
|
||||||
// No need to create view model, set binding context an items source if already done.
|
// No need to create view model, set binding context an items source if already done.
|
||||||
|
@ -163,7 +170,10 @@ namespace TINK.View.MyBikes
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
||||||
#else
|
#else
|
||||||
public async Task<IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
/// <summary> Displays user feedback popup.</summary>
|
||||||
|
/// <param name="co2Saving"> Co2 saving information.</param>
|
||||||
|
/// <returns>User feedback.</returns>
|
||||||
|
public async Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup(co2Saving));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -146,7 +146,10 @@ namespace TINK.View.Settings
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
public async Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
||||||
#else
|
#else
|
||||||
public async Task<IUserFeedback> DisplayUserFeedbackPopup() => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
/// <summary> Displays user feedback popup.</summary>
|
||||||
|
/// <param name="co2Saving"> Co2 saving information.</param>
|
||||||
|
/// <returns>User feedback.</returns>
|
||||||
|
public async Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => await Navigation.ShowPopupAsync<FeedbackPopup.Result>(new FeedbackPopup());
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if USERFEEDBACKDLG_TRYOUT
|
#if USERFEEDBACKDLG_TRYOUT
|
||||||
|
|
|
@ -75,7 +75,7 @@ namespace TINK.View.WhatsNew.Agb
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -79,7 +79,7 @@ namespace TINK.View.WhatsNew
|
||||||
#if USCSHARP9
|
#if USCSHARP9
|
||||||
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IViewService.IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
||||||
#else
|
#else
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup() => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -55,8 +55,8 @@ namespace TINK.ViewModel.MasterDetail
|
||||||
}
|
}
|
||||||
else if (type == typeof(TabbedPageInfo))
|
else if (type == typeof(TabbedPageInfo))
|
||||||
{
|
{
|
||||||
return string.Format(AppResources.MarkingAbout, ContactPageViewModel.GetAppName(App.ModelRoot.Uris.ActiveUri));
|
return AppResources.MarkingAbout;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return type.Name;
|
return type.Name;
|
||||||
|
|
|
@ -66,7 +66,7 @@ namespace TINK.ViewModel.RootShell
|
||||||
public bool IsSettingsPageVisible => App.ModelRoot.Uris.ActiveUri.Host.GetIsCopri()
|
public bool IsSettingsPageVisible => App.ModelRoot.Uris.ActiveUri.Host.GetIsCopri()
|
||||||
|| App.ModelRoot.ActiveUser.IsLoggedIn;
|
|| App.ModelRoot.ActiveUser.IsLoggedIn;
|
||||||
|
|
||||||
public string TabbedPageIngoTitle => string.Format(AppResources.MarkingAbout, ContactPageViewModel.GetAppName(App.ModelRoot.Uris.ActiveUri));
|
public string TabbedPageIngoTitle => AppResources.MarkingAbout;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
101
TINK.sln
|
@ -35,9 +35,14 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Meinkonrad.Android", "Meink
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Meinkonrad.iOS", "Meinkonrad\TINK.iOS\Meinkonrad.iOS.csproj", "{CF1B848A-D1DF-40AB-BA6F-B1E1746A1161}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Meinkonrad.iOS", "Meinkonrad\TINK.iOS\Meinkonrad.iOS.csproj", "{CF1B848A-D1DF-40AB-BA6F-B1E1746A1161}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestFramework", "TestFramework\TestFramework.csproj", "{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}"
|
||||||
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestSharee", "TestSharee\TestSharee.csproj", "{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}"
|
||||||
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
||||||
LastenradBayern\TINK\LastenradBayern.projitems*{0b1ad2f8-7ada-4c20-b0bd-58f32a224a71}*SharedItemsImports = 4
|
LastenradBayern\TINK\LastenradBayern.projitems*{0b1ad2f8-7ada-4c20-b0bd-58f32a224a71}*SharedItemsImports = 4
|
||||||
|
LastenradBayern\TINK\LastenradBayern.projitems*{3a0ef953-1501-4155-b0a0-265eb5fb2975}*SharedItemsImports = 4
|
||||||
Meinkonrad\TINK\Meinkonrad.projitems*{4bcd922e-9393-4d96-ab5c-3d92f62f9eed}*SharedItemsImports = 4
|
Meinkonrad\TINK\Meinkonrad.projitems*{4bcd922e-9393-4d96-ab5c-3d92f62f9eed}*SharedItemsImports = 4
|
||||||
TINK\TINK\TINK.projitems*{5297504f-603f-4e1a-98aa-57c4a0d9d833}*SharedItemsImports = 13
|
TINK\TINK\TINK.projitems*{5297504f-603f-4e1a-98aa-57c4a0d9d833}*SharedItemsImports = 13
|
||||||
Meinkonrad\TINK\Meinkonrad.projitems*{5cf95cb1-ad37-4dba-8b9d-651cfb9eb903}*SharedItemsImports = 13
|
Meinkonrad\TINK\Meinkonrad.projitems*{5cf95cb1-ad37-4dba-8b9d-651cfb9eb903}*SharedItemsImports = 13
|
||||||
|
@ -722,6 +727,102 @@ Global
|
||||||
{CF1B848A-D1DF-40AB-BA6F-B1E1746A1161}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
|
{CF1B848A-D1DF-40AB-BA6F-B1E1746A1161}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
|
||||||
{CF1B848A-D1DF-40AB-BA6F-B1E1746A1161}.Release|x64.ActiveCfg = Release|iPhoneSimulator
|
{CF1B848A-D1DF-40AB-BA6F-B1E1746A1161}.Release|x64.ActiveCfg = Release|iPhoneSimulator
|
||||||
{CF1B848A-D1DF-40AB-BA6F-B1E1746A1161}.Release|x86.ActiveCfg = Release|iPhoneSimulator
|
{CF1B848A-D1DF-40AB-BA6F-B1E1746A1161}.Release|x86.ActiveCfg = Release|iPhoneSimulator
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|x64.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Debug|x86.Build.0 = Debug|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|ARM.Build.0 = Release|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|iPhone.Build.0 = Release|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|x64.Build.0 = Release|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|x86.ActiveCfg = Release|Any CPU
|
||||||
|
{9EA4ED8C-C4C3-48DC-8CBE-9281E0A7CA8D}.Release|x86.Build.0 = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|x64.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Debug|x86.Build.0 = Debug|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|ARM.Build.0 = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|iPhone.Build.0 = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|x64.ActiveCfg = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|x64.Build.0 = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|x86.ActiveCfg = Release|Any CPU
|
||||||
|
{9C80A989-4BBB-4F00-AB5D-45B1F99D5A08}.Release|x86.Build.0 = Release|Any CPU
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|
|
@ -5,6 +5,8 @@ using Android.OS;
|
||||||
using Android.Content;
|
using Android.Content;
|
||||||
using Java.Interop;
|
using Java.Interop;
|
||||||
using Plugin.Permissions;
|
using Plugin.Permissions;
|
||||||
|
using Xamarin.Forms.Platform.Android.AppLinks;
|
||||||
|
using Firebase;
|
||||||
|
|
||||||
namespace TINK.Droid
|
namespace TINK.Droid
|
||||||
{
|
{
|
||||||
|
@ -35,6 +37,9 @@ namespace TINK.Droid
|
||||||
|
|
||||||
global::Xamarin.Forms.Forms.Init (this, bundle);
|
global::Xamarin.Forms.Forms.Init (this, bundle);
|
||||||
|
|
||||||
|
FirebaseApp.InitializeApp(this);
|
||||||
|
AndroidAppLinks.Init(this);
|
||||||
|
|
||||||
// Initialize xamarin.essentials, see https://docs.microsoft.com/en-us/xamarin/essentials/get-started?tabs=macos%2Candroid.
|
// Initialize xamarin.essentials, see https://docs.microsoft.com/en-us/xamarin/essentials/get-started?tabs=macos%2Candroid.
|
||||||
Xamarin.Essentials.Platform.Init(this, bundle);
|
Xamarin.Essentials.Platform.Init(this, bundle);
|
||||||
|
|
||||||
|
@ -66,7 +71,7 @@ namespace TINK.Droid
|
||||||
if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Essentials.Permissions))
|
if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Essentials.Permissions))
|
||||||
{
|
{
|
||||||
Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
|
Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
|
||||||
}
|
}
|
||||||
else if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Plugin.Permissions))
|
else if (App.PermissionsService.GetType() == typeof(TINK.Services.Permissions.Plugin.Permissions))
|
||||||
{
|
{
|
||||||
// Bug in 3.0.244 and earlier versions of sharee.bike app: Call of PermissionsImplementation.Current.OnRequestedPermission result was missing.
|
// Bug in 3.0.244 and earlier versions of sharee.bike app: Call of PermissionsImplementation.Current.OnRequestedPermission result was missing.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="preferExternal" package="com.hauffware.sharee" android:versionName="3.0.257" android:versionCode="257">
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="preferExternal" package="com.hauffware.sharee" android:versionName="3.0.267" android:versionCode="267">
|
||||||
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="29" />
|
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="30" />
|
||||||
<!-- Google Maps related permissions -->
|
<!-- Google Maps related permissions -->
|
||||||
<!-- Permission to receive remote notifications from Google Play Services -->
|
<!-- Permission to receive remote notifications from Google Play Services -->
|
||||||
<!-- Notice here that we have the package name of our application as a prefix on the permissions. -->
|
<!-- Notice here that we have the package name of our application as a prefix on the permissions. -->
|
||||||
|
@ -18,5 +18,5 @@
|
||||||
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
|
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
|
||||||
<uses-feature android:name="android.hardware.bluetooth_le" android:required="true" />
|
<uses-feature android:name="android.hardware.bluetooth_le" android:required="true" />
|
||||||
<application android:icon="@drawable/sharee" android:label="sharee.bike" android:allowBackup="false"></application>
|
<application android:icon="@drawable/sharee" android:label="sharee.bike" android:allowBackup="false"></application>
|
||||||
<meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="000000000000000000000000000000000000000" />
|
<meta-data android:name="com.google.android.geo.API_KEY" android:value="000000000000000000000000000000000000000" />
|
||||||
</manifest>
|
</manifest>
|
|
@ -40,6 +40,6 @@ using Xamarin.Forms;
|
||||||
[assembly: Application(Debuggable = false)]
|
[assembly: Application(Debuggable = false)]
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
[assembly: MetaData("com.google.android.maps.v2.API_KEY", Value = "000000000000000000000000000000000000000")]
|
[assembly: MetaData("com.google.android.geo.API_KEY", Value = "000000000000000000000000000000000000000")]
|
||||||
|
|
||||||
[assembly: ExportFont("Font Awesome 5 Free-Solid-900.otf", Alias = "FA-S")]
|
[assembly: ExportFont("Font Awesome 5 Free-Solid-900.otf", Alias = "FA-S")]
|
||||||
|
|
19
TINK/TINK.Android/Resources/Resource.Designer.cs
generated
|
@ -458,6 +458,8 @@ namespace TINK.Droid
|
||||||
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_btn_unelevated_state_list_anim = global::TINK.Droid.Resource.Animator.mtrl_btn_unelevated_state_list_anim;
|
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_btn_unelevated_state_list_anim = global::TINK.Droid.Resource.Animator.mtrl_btn_unelevated_state_list_anim;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_card_state_list_anim = global::TINK.Droid.Resource.Animator.mtrl_card_state_list_anim;
|
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_card_state_list_anim = global::TINK.Droid.Resource.Animator.mtrl_card_state_list_anim;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_chip_state_list_anim = global::TINK.Droid.Resource.Animator.mtrl_chip_state_list_anim;
|
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_chip_state_list_anim = global::TINK.Droid.Resource.Animator.mtrl_chip_state_list_anim;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_extended_fab_change_size_collapse_motion_spec = global::TINK.Droid.Resource.Animator.mtrl_extended_fab_change_size_collapse_motion_spec;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_extended_fab_change_size_expand_motion_spec = global::TINK.Droid.Resource.Animator.mtrl_extended_fab_change_size_expand_motion_spec;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_extended_fab_hide_motion_spec = global::TINK.Droid.Resource.Animator.mtrl_extended_fab_hide_motion_spec;
|
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_extended_fab_hide_motion_spec = global::TINK.Droid.Resource.Animator.mtrl_extended_fab_hide_motion_spec;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_extended_fab_show_motion_spec = global::TINK.Droid.Resource.Animator.mtrl_extended_fab_show_motion_spec;
|
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_extended_fab_show_motion_spec = global::TINK.Droid.Resource.Animator.mtrl_extended_fab_show_motion_spec;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_extended_fab_state_list_animator = global::TINK.Droid.Resource.Animator.mtrl_extended_fab_state_list_animator;
|
global::Xamarin.CommunityToolkit.Resource.Animator.mtrl_extended_fab_state_list_animator = global::TINK.Droid.Resource.Animator.mtrl_extended_fab_state_list_animator;
|
||||||
|
@ -1665,6 +1667,18 @@ namespace TINK.Droid
|
||||||
global::Xamarin.CommunityToolkit.Resource.Color.material_on_surface_disabled = global::TINK.Droid.Resource.Color.material_on_surface_disabled;
|
global::Xamarin.CommunityToolkit.Resource.Color.material_on_surface_disabled = global::TINK.Droid.Resource.Color.material_on_surface_disabled;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Color.material_on_surface_emphasis_high_type = global::TINK.Droid.Resource.Color.material_on_surface_emphasis_high_type;
|
global::Xamarin.CommunityToolkit.Resource.Color.material_on_surface_emphasis_high_type = global::TINK.Droid.Resource.Color.material_on_surface_emphasis_high_type;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Color.material_on_surface_emphasis_medium = global::TINK.Droid.Resource.Color.material_on_surface_emphasis_medium;
|
global::Xamarin.CommunityToolkit.Resource.Color.material_on_surface_emphasis_medium = global::TINK.Droid.Resource.Color.material_on_surface_emphasis_medium;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_on_surface_stroke = global::TINK.Droid.Resource.Color.material_on_surface_stroke;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_slider_active_tick_marks_color = global::TINK.Droid.Resource.Color.material_slider_active_tick_marks_color;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_slider_active_track_color = global::TINK.Droid.Resource.Color.material_slider_active_track_color;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_slider_halo_color = global::TINK.Droid.Resource.Color.material_slider_halo_color;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_slider_inactive_tick_marks_color = global::TINK.Droid.Resource.Color.material_slider_inactive_tick_marks_color;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_slider_inactive_track_color = global::TINK.Droid.Resource.Color.material_slider_inactive_track_color;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_slider_thumb_color = global::TINK.Droid.Resource.Color.material_slider_thumb_color;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_timepicker_button_background = global::TINK.Droid.Resource.Color.material_timepicker_button_background;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_timepicker_button_stroke = global::TINK.Droid.Resource.Color.material_timepicker_button_stroke;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_timepicker_clockface = global::TINK.Droid.Resource.Color.material_timepicker_clockface;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_timepicker_clock_text_color = global::TINK.Droid.Resource.Color.material_timepicker_clock_text_color;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Color.material_timepicker_modebutton_tint = global::TINK.Droid.Resource.Color.material_timepicker_modebutton_tint;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Color.mtrl_btn_bg_color_selector = global::TINK.Droid.Resource.Color.mtrl_btn_bg_color_selector;
|
global::Xamarin.CommunityToolkit.Resource.Color.mtrl_btn_bg_color_selector = global::TINK.Droid.Resource.Color.mtrl_btn_bg_color_selector;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Color.mtrl_btn_ripple_color = global::TINK.Droid.Resource.Color.mtrl_btn_ripple_color;
|
global::Xamarin.CommunityToolkit.Resource.Color.mtrl_btn_ripple_color = global::TINK.Droid.Resource.Color.mtrl_btn_ripple_color;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Color.mtrl_btn_stroke_color_selector = global::TINK.Droid.Resource.Color.mtrl_btn_stroke_color_selector;
|
global::Xamarin.CommunityToolkit.Resource.Color.mtrl_btn_stroke_color_selector = global::TINK.Droid.Resource.Color.mtrl_btn_stroke_color_selector;
|
||||||
|
@ -2250,6 +2264,9 @@ namespace TINK.Droid
|
||||||
global::Xamarin.CommunityToolkit.Resource.Drawable.abc_textfield_search_default_mtrl_alpha = global::TINK.Droid.Resource.Drawable.abc_textfield_search_default_mtrl_alpha;
|
global::Xamarin.CommunityToolkit.Resource.Drawable.abc_textfield_search_default_mtrl_alpha = global::TINK.Droid.Resource.Drawable.abc_textfield_search_default_mtrl_alpha;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Drawable.abc_textfield_search_material = global::TINK.Droid.Resource.Drawable.abc_textfield_search_material;
|
global::Xamarin.CommunityToolkit.Resource.Drawable.abc_textfield_search_material = global::TINK.Droid.Resource.Drawable.abc_textfield_search_material;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Drawable.abc_text_cursor_material = global::TINK.Droid.Resource.Drawable.abc_text_cursor_material;
|
global::Xamarin.CommunityToolkit.Resource.Drawable.abc_text_cursor_material = global::TINK.Droid.Resource.Drawable.abc_text_cursor_material;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Drawable.abc_text_select_handle_left_mtrl = global::TINK.Droid.Resource.Drawable.abc_text_select_handle_left_mtrl;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Drawable.abc_text_select_handle_middle_mtrl = global::TINK.Droid.Resource.Drawable.abc_text_select_handle_middle_mtrl;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Drawable.abc_text_select_handle_right_mtrl = global::TINK.Droid.Resource.Drawable.abc_text_select_handle_right_mtrl;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Drawable.abc_vector_test = global::TINK.Droid.Resource.Drawable.abc_vector_test;
|
global::Xamarin.CommunityToolkit.Resource.Drawable.abc_vector_test = global::TINK.Droid.Resource.Drawable.abc_vector_test;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Drawable.avd_hide_password = global::TINK.Droid.Resource.Drawable.avd_hide_password;
|
global::Xamarin.CommunityToolkit.Resource.Drawable.avd_hide_password = global::TINK.Droid.Resource.Drawable.avd_hide_password;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Drawable.avd_show_password = global::TINK.Droid.Resource.Drawable.avd_show_password;
|
global::Xamarin.CommunityToolkit.Resource.Drawable.avd_show_password = global::TINK.Droid.Resource.Drawable.avd_show_password;
|
||||||
|
@ -2535,6 +2552,7 @@ namespace TINK.Droid
|
||||||
global::Xamarin.CommunityToolkit.Resource.Id.jumpToEnd = global::TINK.Droid.Resource.Id.jumpToEnd;
|
global::Xamarin.CommunityToolkit.Resource.Id.jumpToEnd = global::TINK.Droid.Resource.Id.jumpToEnd;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Id.jumpToStart = global::TINK.Droid.Resource.Id.jumpToStart;
|
global::Xamarin.CommunityToolkit.Resource.Id.jumpToStart = global::TINK.Droid.Resource.Id.jumpToStart;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Id.labeled = global::TINK.Droid.Resource.Id.labeled;
|
global::Xamarin.CommunityToolkit.Resource.Id.labeled = global::TINK.Droid.Resource.Id.labeled;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Id.layout = global::TINK.Droid.Resource.Id.layout;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Id.left = global::TINK.Droid.Resource.Id.left;
|
global::Xamarin.CommunityToolkit.Resource.Id.left = global::TINK.Droid.Resource.Id.left;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Id.leftToRight = global::TINK.Droid.Resource.Id.leftToRight;
|
global::Xamarin.CommunityToolkit.Resource.Id.leftToRight = global::TINK.Droid.Resource.Id.leftToRight;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Id.legacy = global::TINK.Droid.Resource.Id.legacy;
|
global::Xamarin.CommunityToolkit.Resource.Id.legacy = global::TINK.Droid.Resource.Id.legacy;
|
||||||
|
@ -3575,6 +3593,7 @@ namespace TINK.Droid
|
||||||
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_Dialog_Alert = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_Dialog_Alert;
|
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_Dialog_Alert = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_Dialog_Alert;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_Dialog_Alert_Framework = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_Dialog_Alert_Framework;
|
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_Dialog_Alert_Framework = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_Dialog_Alert_Framework;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_Light = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_Light;
|
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_Light = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_Light;
|
||||||
|
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_Light_Dialog_Alert_Framework = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_Light_Dialog_Alert_Framework;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog;
|
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog_Centered = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog_Centered;
|
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog_Centered = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog_Centered;
|
||||||
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog_Picker_Date = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog_Picker_Date;
|
global::Xamarin.CommunityToolkit.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog_Picker_Date = global::TINK.Droid.Resource.Style.ThemeOverlay_MaterialComponents_MaterialAlertDialog_Picker_Date;
|
||||||
|
|
|
@ -63,7 +63,7 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
||||||
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.3" />
|
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.4" />
|
||||||
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
||||||
<PackageReference Include="MonkeyCache">
|
<PackageReference Include="MonkeyCache">
|
||||||
<Version>1.5.2</Version>
|
<Version>1.5.2</Version>
|
||||||
|
@ -162,34 +162,37 @@
|
||||||
<PackageReference Include="Xamarin.Android.Support.v7.RecyclerView" Version="28.0.0.3" />
|
<PackageReference Include="Xamarin.Android.Support.v7.RecyclerView" Version="28.0.0.3" />
|
||||||
<PackageReference Include="Xamarin.Android.Support.Vector.Drawable" Version="28.0.0.3" />
|
<PackageReference Include="Xamarin.Android.Support.Vector.Drawable" Version="28.0.0.3" />
|
||||||
<PackageReference Include="Xamarin.AndroidX.Core">
|
<PackageReference Include="Xamarin.AndroidX.Core">
|
||||||
<Version>1.6.0.1</Version>
|
<Version>1.6.0.3</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.AndroidX.MediaRouter">
|
<PackageReference Include="Xamarin.AndroidX.MediaRouter">
|
||||||
<Version>1.2.5</Version>
|
<Version>1.2.5.2</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.AndroidX.Palette">
|
<PackageReference Include="Xamarin.AndroidX.Palette">
|
||||||
<Version>1.0.0.8</Version>
|
<Version>1.0.0.10</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.AndroidX.RecyclerView">
|
<PackageReference Include="Xamarin.AndroidX.RecyclerView">
|
||||||
<Version>1.2.1.1</Version>
|
<Version>1.2.1.3</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
||||||
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
||||||
<PackageReference Include="Xamarin.CommunityToolkit">
|
<PackageReference Include="Xamarin.CommunityToolkit">
|
||||||
<Version>1.2.0</Version>
|
<Version>1.3.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Essentials">
|
<PackageReference Include="Xamarin.Essentials">
|
||||||
<Version>1.7.0</Version>
|
<Version>1.7.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms" Version="5.0.0.2125" />
|
<PackageReference Include="Xamarin.Forms" Version="5.0.0.2196" />
|
||||||
|
<PackageReference Include="Xamarin.Forms.AppLinks">
|
||||||
|
<Version>5.0.0.2244</Version>
|
||||||
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms.GoogleMaps">
|
<PackageReference Include="Xamarin.Forms.GoogleMaps">
|
||||||
<Version>3.3.0</Version>
|
<Version>3.3.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms.GoogleMaps.Bindings" Version="3.0.0" />
|
<PackageReference Include="Xamarin.Forms.GoogleMaps.Bindings" Version="3.0.0" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Base" Version="117.6.0" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Base" Version="117.6.0.1" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Basement" Version="117.6.0.1" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Basement" Version="117.6.0.2" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Maps" Version="117.0.1" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Maps" Version="117.0.1.1" />
|
||||||
<PackageReference Include="Xamarin.GooglePlayServices.Tasks" Version="117.2.1" />
|
<PackageReference Include="Xamarin.GooglePlayServices.Tasks" Version="117.2.1.1" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Mono.Android" />
|
<Reference Include="Mono.Android" />
|
||||||
|
|
|
@ -49,8 +49,8 @@
|
||||||
<key>CFBundleDisplayName</key>
|
<key>CFBundleDisplayName</key>
|
||||||
<string>sharee.bike</string>
|
<string>sharee.bike</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>257</string>
|
<string>267</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>3.0.257</string>
|
<string>3.0.267</string>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
|
@ -115,7 +115,7 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.Bcl.Build" Version="1.0.21" />
|
<PackageReference Include="Microsoft.Bcl.Build" Version="1.0.21" />
|
||||||
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
|
||||||
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.3" />
|
<PackageReference Include="Microsoft.NETCore.Platforms" Version="5.0.4" />
|
||||||
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
<PackageReference Include="Microsoft.Win32.Primitives" Version="4.3.0" />
|
||||||
<PackageReference Include="MonkeyCache">
|
<PackageReference Include="MonkeyCache">
|
||||||
<Version>1.5.2</Version>
|
<Version>1.5.2</Version>
|
||||||
|
@ -192,7 +192,7 @@
|
||||||
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
<PackageReference Include="Xamarin.Auth" Version="1.7.0" />
|
||||||
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
<PackageReference Include="Xamarin.Build.Download" Version="0.10.0" />
|
||||||
<PackageReference Include="Xamarin.CommunityToolkit">
|
<PackageReference Include="Xamarin.CommunityToolkit">
|
||||||
<Version>1.2.0</Version>
|
<Version>1.3.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Essentials">
|
<PackageReference Include="Xamarin.Essentials">
|
||||||
<Version>1.7.0</Version>
|
<Version>1.7.0</Version>
|
||||||
|
@ -215,7 +215,7 @@
|
||||||
<Version>0.7.104</Version>
|
<Version>0.7.104</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Xamarin.Forms">
|
<PackageReference Include="Xamarin.Forms">
|
||||||
<Version>5.0.0.2125</Version>
|
<Version>5.0.0.2196</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
@ -145,7 +145,7 @@ namespace TINK
|
||||||
m_oModelRoot = new TinkApp(
|
m_oModelRoot = new TinkApp(
|
||||||
settings,
|
settings,
|
||||||
store, // Manages user account
|
store, // Manages user account
|
||||||
(isConnected, activeUri, sessionCookie, mail, expiresAfter) => ConnectorFactory.Create(isConnected, activeUri, $"sharee.bike/{appInfoService.Version}", sessionCookie, mail, expiresAfter),
|
(isConnected, activeUri, sessionCookie, mail, expiresAfter) => ConnectorFactory.Create(isConnected, activeUri, new Repository.AppContextInfo("oiF2kahH", "sharee.bike", appInfoService.Version), sessionCookie, mail, expiresAfter),
|
||||||
GeolocationServicesContainer,
|
GeolocationServicesContainer,
|
||||||
null, /* locksService */
|
null, /* locksService */
|
||||||
DependencyService.Get<ISmartDevice>(),
|
DependencyService.Get<ISmartDevice>(),
|
||||||
|
@ -307,7 +307,7 @@ namespace TINK
|
||||||
if (_PermissionsService != null)
|
if (_PermissionsService != null)
|
||||||
return _PermissionsService;
|
return _PermissionsService;
|
||||||
|
|
||||||
_PermissionsService = new Services.Permissions.Plugin.Permissions();
|
_PermissionsService = new Services.Permissions.Essentials.Permissions();
|
||||||
return _PermissionsService;
|
return _PermissionsService;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,19 +14,31 @@
|
||||||
<Frame>
|
<Frame>
|
||||||
<StackLayout
|
<StackLayout
|
||||||
Orientation="Vertical">
|
Orientation="Vertical">
|
||||||
<Label
|
<!-- Title bar stack layout-->
|
||||||
HorizontalOptions="Center"
|
<StackLayout
|
||||||
FontAttributes="Bold"
|
Orientation="Vertical">
|
||||||
Text="{Binding StationDetailText}"/>
|
<Label
|
||||||
<ListView
|
HorizontalOptions="Center"
|
||||||
x:Name="BikesAtStationListView"
|
FontAttributes="Bold"
|
||||||
SelectionMode="None"
|
TextColor="{DynamicResource primary-back-title-color}"
|
||||||
SelectedItem="{Binding SelectedBike}"
|
Text="{Binding StationDetailText}"/>
|
||||||
IsEnabled="{Binding IsIdle}"
|
<BoxView
|
||||||
IsVisible="{Binding IsBikesListVisible}"
|
HeightRequest="1"
|
||||||
HasUnevenRows="True"
|
Color="{DynamicResource primary-back-title-color}"/>
|
||||||
ItemTemplate="{StaticResource bikeTemplateSelector}"/>
|
</StackLayout>
|
||||||
<Label
|
<!-- Center stack layout -->
|
||||||
|
<StackLayout
|
||||||
|
Orientation="Vertical"
|
||||||
|
VerticalOptions="CenterAndExpand">
|
||||||
|
<ListView
|
||||||
|
x:Name="BikesAtStationListView"
|
||||||
|
SelectionMode="None"
|
||||||
|
SelectedItem="{Binding SelectedBike}"
|
||||||
|
IsEnabled="{Binding IsIdle}"
|
||||||
|
IsVisible="{Binding IsBikesListVisible}"
|
||||||
|
HasUnevenRows="True"
|
||||||
|
ItemTemplate="{StaticResource bikeTemplateSelector}"/>
|
||||||
|
<Label
|
||||||
IsVisible="{Binding IsNoBikesAtStationVisible}"
|
IsVisible="{Binding IsNoBikesAtStationVisible}"
|
||||||
Text="{Binding NoBikesAtStationText}"/>
|
Text="{Binding NoBikesAtStationText}"/>
|
||||||
</StackLayout>
|
</StackLayout>
|
||||||
|
|
|
@ -91,14 +91,6 @@ namespace TINK.View.Contact
|
||||||
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
public Task<IUserFeedback> DisplayUserFeedbackPopup(string co2Saving = null) => throw new NotSupportedException();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if USEFLYOUT
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Delegate to perform navigation.
|
|
||||||
/// </summary>
|
|
||||||
public INavigationMasterDetail NavigationMasterDetail { set; private get; }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if USEFLYOUT
|
#if USEFLYOUT
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|