首页 文章

Monodroid Java Binding

提问于
浏览 1787 次
1

我已经创建了一个java应用程序,用于我的c#app和与facebook交谈 . 这个助手类允许我获取好友列表并在Facebook墙上发布 .

我最近有一些问题试图将我的一个java函数绑定到monodroid .

我正在使用的java函数如下:

public void PostPicture(Activity mainActivity, String opponent, byte[] bytes, String picdescription, RequestListener listener)
{
    Bundle params = new Bundle();
    params.putString("name", picdescription);
    params.putByteArray("source", bytes);
    if(opponent != null)
    {
        params.putString("tags", opponent);
    }
    _asyncFacebook.request("me/photos", params, "POST", listener, null);        
}

我遇到的问题是尝试绑定byte []字节 .

JNIEnv.GetMethodID(_class_ref,“PostPicture”,“(Landroid / app / Activity; Ljava / lang / String; [Ljava / lang / Byte; Ljava / lang / String; Lcom / Hitcents / PictureThis / BaseRequestListener;)V”);

_class_ref是包含“PostPicture”的java类的完全限定名 .

[Ljava / lang / Byte不是对byte []的正确绑定吗?

2 回答

  • 1

    我能够回答我自己的问题 . 通过将字节数组作为Ljava / lang / Object传递,我就可以将其转换为java端的byte [] .

  • 1

    byte[] 不是 [Ljava/lang/Byte; ,它是[B . [Ljava/lang/Byte; 将是 java.lang.Byte[]java.lang.Byte 实例的数组) .

相关问题