在Unity C#

问题描述

我需要创建java.lang.String的Java列表,才能将其传递给方法(用于Facebook共享)。

public E setPeopleIds(java.util.List<java.lang.String> peopleIds)

这就是我的称呼

shareLinkContentBuilder.Call<AndroidJavaObject>("setPeopleIds",ToJavaList(facebookID));

我不知道如何从c#字符串创建Java字符串列表。这是我尝试过的方法,但列表上出现了nre异常。呼叫行

private AndroidJavaObject ToJavaList(string value)
    {
        AndroidJavaObject list = new AndroidJavaObject("java.util.List");
        list.Call("add",new AndroidJavaObject("java.lang.String",value));
        return list;
    }

找不到任何信息,因为大多数主题都在xamarin上,或者它们使用数组而不是列表。

解决方法

java.util.List可能是一个接口,因此不能单独支持像add这样的方法。您可能必须使用Java列表的实现,例如java.util.ArrayList

另一件事是,后一个函数每次仅用一个元素创建一个新列表。我不确定那是否就是您想要的。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...