Как использовать Java для вызова библиотеки C #, которая вызывает собственную библиотеку C ++

Я пытаюсь сделать приложение для Android для «Редактирования в реальном времени» на Playstation, и это зависит от 2 библиотек для работы. Один из которых закодирован в C #, а другой — в Native C ++. C # lib использует функцию Importdll для выполнения вызовов к собственному коду C ++, который, в свою очередь, вступает в силу с PS3.

Пример:

[DllImport("CCAPI.dll", EntryPoint="_ZN5CcApi13getDllVersionEv", CallingConvention=CallingConvention.Cdecl)]
private static extern int getDllVersion();
public int GetDllVersion()
{
return getDllVersion();
}

Проблема: библиотека C ++ не является открытым исходным кодом. И я не думаю, что можно использовать JNI для вызова методов в библиотеке C ++ без добавления заголовка Java. (Извините, если это звучит немного глупо, я буквально ДЕНЬ 1 новичок в JAVA).

Мне просто интересно, могу ли я сделать версию Java PS3Lib (javaplugin), чтобы она могла работать с CCAPI.dll.

C # Lib: PS3Lib.dll http://www.mediafire.com/download/chsvllkrmvb56vi/PS3Lib4.4.2.1.dll
C ++ Lib: CCAPI.dll http://www.mediafire.com/download/k5x3c1s6z26cuzt/CCAPI2.50.dll

Спасибо, я ценю любого, кто даже читает это. Любая обратная связь будет принята с благодарностью.

1

Решение

Нашел ответ, который мне был нужен. Вы должны использовать JNI (собственный интерфейс Java), чтобы обернуть библиотеку C # и вызвать методы C ++.

0

Другие решения


По вопросам рекламы [email protected]