Embeddinator-4000:在Visual Studio中生成.aar时,方法会被忽略

我正在使用Visual Studio 17(Windows),并尝试使用embeddinator-4000工具从Xamarin C#Android库构建.aar文件,但是在参数或返回类型中使用用户定义的类的方法被工具和不作为.aar的一部分来 下面是使用的2个类:

  1. 扩展ArrayList的自定义类。
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() { }
    }
}
  1. 使用参数中的ViewSubclass的方法所在的类。
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));
        }
    }
}
  1. .aar文件(反编译)中显示的类。
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();
    }
}

请帮助您弄清楚为什么 Store 方法没有作为.aar文件的一部分。 预先感谢。

lgl26 回答:Embeddinator-4000:在Visual Studio中生成.aar时,方法会被忽略

我一直为此苦苦挣扎。

问题出在类型上。 尝试使用基本数组而不是arraylist,很可能您的Store()方法将不会被忽略,并会显示在生成的lib中。

有许多类似的限制。 但是,没有限制的完整列表。 Embeddinator 4000是一个很棒的概念,但是必须有更多关于如何在其生成日志中生成,使用和解释/修复错误的文档。

希望这会有所帮助。

本文链接:https://www.f2er.com/2691470.html

大家都在问