52 строки
951 B
C#
52 строки
951 B
C#
using System.IO;
|
|
|
|
using Microsoft.Build.Framework;
|
|
|
|
using Xamarin.Localization.MSBuild;
|
|
|
|
namespace Xamarin.MacDev.Tasks
|
|
{
|
|
public abstract class PrepareResourceRulesTaskBase : XamarinTask
|
|
{
|
|
#region Inputs
|
|
|
|
[Required]
|
|
public string AppBundleDir { get; set; }
|
|
|
|
public string ResourceRules { get; set; }
|
|
|
|
[Required]
|
|
public string SdkVersion { get; set; }
|
|
|
|
#endregion
|
|
|
|
#region Outputs
|
|
|
|
[Output]
|
|
public string PreparedResourceRules { get; set; }
|
|
|
|
#endregion
|
|
|
|
public override bool Execute ()
|
|
{
|
|
if (!string.IsNullOrEmpty (ResourceRules)) {
|
|
var destination = Path.Combine (AppBundleDir, "ResourceRules.plist");
|
|
|
|
if (!File.Exists (ResourceRules)) {
|
|
Log.LogError (MSBStrings.E0065, ResourceRules);
|
|
return false;
|
|
}
|
|
|
|
File.Copy (ResourceRules, destination, true);
|
|
|
|
PreparedResourceRules = destination;
|
|
} else {
|
|
PreparedResourceRules = string.Empty;
|
|
}
|
|
|
|
return !Log.HasLoggedErrors;
|
|
}
|
|
}
|
|
}
|
|
|