C# Embeddedinator-4000:在Visual Studio中生成.aar时忽略方法
我正在使用visual studio 17(Windows)并尝试使用Embeddedinator-4000工具从Xamarin C#Android库中构建一个.aar文件,但是在参数或返回类型中使用用户定义类的方法被工具忽略,而不是作为.aar的一部分 下面是使用的两个类:C# Embeddedinator-4000:在Visual Studio中生成.aar时忽略方法,c#,android,xamarin,embeddinator,C#,Android,Xamarin,Embeddinator,我正在使用visual studio 17(Windows)并尝试使用Embeddedinator-4000工具从Xamarin C#Android库中构建一个.aar文件,但是在参数或返回类型中使用用户定义类的方法被工具忽略,而不是作为.aar的一部分 下面是使用的两个类: 扩展ArrayList的自定义类 类中使用参数中的ViewSubclass的方法 类,如.aar文件所示(已反编译) 请帮助理解为什么方法存储不作为.aar文件的一部分。 提前谢谢。我已经为此挣扎了好几天了 问题在于类型。
提前谢谢。我已经为此挣扎了好几天了 问题在于类型。 尝试使用基本数组而不是arraylist,您的Store()方法很可能不会被忽略,并显示在生成的库中 有许多类似的限制。 但是,没有一个完整的限制列表。 Embeddedinator 4000是一个很好的概念,但是必须有更多关于如何在其生成日志中构建、使用和解释/修复错误的文档
希望这有帮助。根据您的描述和代码,.arr文件中没有存储方法,现在您想在项目中使用.arr并调用存储方法吗?
using Android.Runtime;
using Java.Interop;
using Java.Util;
namespace CalculationAndroid
{
[Register("mono.embeddinator.android.ViewSubclass")]
public class ViewSubclass : ArrayList
{
[Export("ViewSubclass")]
public ViewSubclass() : base() { }
}
}
using Android.Runtime;
using Java.Interop;
namespace CalculationAndroid
{
[Register("mono.embeddinator.android.UseViewSubclass")]
public class UseViewSubclass
{
[Export("store")]
public void Store(ViewSubclass arrayList)
{
arrayList.Add("aaa");
System.Console.WriteLine(arrayList.Get(0));
}
}
}
package calculationandroid.calculationandroid;
import mono.embeddinator.*;
import com.sun.jna.*;
public class UseViewSubclass {
public com.sun.jna.Pointer __object;
public UseViewSubclass(com.sun.jna.Pointer object) { this.__object = object; }
public UseViewSubclass() {
__object = calculationandroid.Native_CalculationAndroid.INSTANCE.CalculationAndroid_UseViewSubclass_new();
mono.embeddinator.Runtime.checkExceptions();
}
}