4
从Xamarin documentation on Environment Checks,对于iOS,我可以通过访问MonoTouch.Constants.Version
来检查Xamarin的版本。查看版本的Xamarin.Android以编程方式
是否有Xamarin.Android的等价物?我想为此进行记录。
从Xamarin documentation on Environment Checks,对于iOS,我可以通过访问MonoTouch.Constants.Version
来检查Xamarin的版本。查看版本的Xamarin.Android以编程方式
是否有Xamarin.Android的等价物?我想为此进行记录。
我们已经通过使用*.tt
文件的完成了这个阅读Xamarin.Android版本的文件,并生成包含版本信息的C#类:
<#@ template language="C#" #>
<#@ output extension=".cs" #>
<#@ assembly name="System.Core" #>
<#@ import namespace="System" #>
<#@ import namespace="System.IO" #>
<#@ import namespace="System.Diagnostics" #>
<#@ import namespace="System.Linq" #>
<#@ import namespace="System.Collections" #>
<#@ import namespace="System.Collections.Generic" #>
namespace Versioning
{
public class XamarinAndroid
{
<#
#if __MonoCS__
var path = @"/Library/Frameworks/Xamarin.Android.framework/Versions/Current";
#else
var path = (Directory.Exists(@"C:\Program Files (x86)"))
? @"C:\Program Files (x86)\MSBuild\Xamarin\Android"
: @"C:\Program Files\MSBuild\Xamarin\Android";
#endif
string versionText = "unknown";
if(Directory.Exists(path))
versionText = File.ReadAllLines(Path.Combine(path, "Version"))[0];
#>
public const string Version = "<#=versionText#>";
}
}
在文件的属性,设置Custom Tool
属性到TextTemplatingFileGenerator
。这将执行t4模板预编译并生成一个静态类,其中包含应用程序构建的Xamarin.Android版本。
克里斯,我已经重做了我的答案,以显示我们如何访问Xamarin.Android的版本。这是我的团队几个月前必须解决的一个问题,我认为它现在应该回答您最初的问题。 – matthewrdev 2015-03-19 21:43:22