sharee.bike-App/TINK/TINK.Android/Model/Device/AppInfo.cs

45 lines
1.2 KiB
C#
Raw Normal View History

2021-05-13 20:16:41 +02:00
using System;
using TINK.Droid.Model.Device;
using TINK.Model.Device;
using Xamarin.Forms;
[assembly: Dependency(typeof(AppInfo))]
namespace TINK.Droid.Model.Device
{
2022-09-06 16:08:19 +02:00
/// <summary> Holds information about the TINK- app. </summary>
public class AppInfo : IAppInfo
{
/// <summary> Holds the the version of the app.</summary>
private static Version m_oVersion = null;
2021-05-13 20:16:41 +02:00
2022-09-06 16:08:19 +02:00
/// <summary> Constructs a app info object. </summary>
public AppInfo()
{
}
2021-05-13 20:16:41 +02:00
2022-09-06 16:08:19 +02:00
/// <summary> Constructs a app info object for initialization. </summary>
/// <param name="p_strVersionText"> Version to initializ object with.</param>
internal AppInfo(string p_strVersionText)
{
if (m_oVersion != null)
{
// Set version only once.
return;
}
2021-05-13 20:16:41 +02:00
2022-09-06 16:08:19 +02:00
if (!Version.TryParse(p_strVersionText, out Version l_oVersion))
{
m_oVersion = new Version(0, 8);
}
2021-05-13 20:16:41 +02:00
2022-09-06 16:08:19 +02:00
m_oVersion = l_oVersion;
}
2021-05-13 20:16:41 +02:00
2022-09-06 16:08:19 +02:00
/// <summary> Get the version of the app. </summary>
public Version Version => m_oVersion ?? new Version(0, 9);
2021-05-13 20:16:41 +02:00
2022-09-06 16:08:19 +02:00
/// <summary> Gets the URL to the app store. </summary>
/// <value>The store URL.</value>
public string StoreUrl => $"https://play.google.com/store/apps/details?id={Android.App.Application.Context.PackageName}";
}
2021-05-13 20:16:41 +02:00
}