如何通过 JNI 从 C++ 获取 unsigned long long 到 Kotlin?

How to get unsigned long long from C++ to Kotlin through JNI?

我想从我的 Kotlin 代码中读取一个 unsigned long long。 该值通过 JNI 来自 C++ 代码。

这是 C++ 代码:

unsigned long long getMaxValue() {
    return -1;
}

这是 JNI 代码:

extern "C"
JNIEXPORT jlong JNICALL
Java_com_tb_of_1ir_MainActivity_getMaxValue(JNIEnv *env, jobject thiz) {
    static auto a = MyCppSingleton::get();
    return a->getMaxValue();
}

这是 Kotlin 代码:

Toast.makeText(this, "getMaxValue : \"${getMaxValue()}\"", Toast.LENGTH_LONG).show()
private external fun getMaxValue(): Long

我也尝试过使用 BigInteger 但没有结果...

谢谢!

简单的方法是不可能的。也许通过分解。