Как использовать быструю библиотеку в родном котлине?

Как я могу использовать библиотеку Swift в Kotlin / Native?

Я пробовал cinteropt использовать библиотеки objective-c в Kotlin/Native, но я не могу понять, как я могу использовать быструю библиотеку?

Может ли кто-нибудь направить меня сюда? Заранее спасибо.


person Archie G. Quiñones    schedule 15.03.2020    source источник
comment
Во-первых, какое расширение является вашей быстрой библиотекой? вы можете фактически использовать .so библиотеки, если они нацелены на архитектуру устройства (arm-abi, x86-64 и т. д.) и использовать привязку C ++ JNI (с исходными файлами заголовков из библиотеки) для ее вызова. Но вы будете программировать в основном на C ++, а не на Kotlin.   -  person Marcos Vasconcelos    schedule 15.03.2020
comment
Извините, мой ответ был для цели Android, но, возможно, мой комментарий может просветить ваш поиск   -  person Marcos Vasconcelos    schedule 15.03.2020
comment
это на самом деле смутило меня больше. Пожалуйста, помогите мне. Единственная причина, по которой я хочу использовать быструю библиотеку, чтобы я мог использовать ее для своих целей ios. Вот и все. В частности, я пытаюсь использовать оболочку быстрой библиотеки для связки ключей, чтобы я мог создать библиотеку, которая использует Связку ключей для ios и Encrypted SharedPreference в Android. Для Android это просто, но я не могу понять, как это сделать с помощью Swift.   -  person Archie G. Quiñones    schedule 15.03.2020


Ответы (1)


Вы не можете взаимодействовать со Swift напрямую, если Swift не предназначен для использования Objective-C. Я предполагаю, что в библиотеке Keychain доступны привязки Objective-C, с которыми вы должны иметь возможность взаимодействовать. Если нет, вы можете либо написать какую-то оболочку, которая будет предоставлять интерфейс Objective-C, либо написать интерфейс Kotlin и реализовать его на Swift и передать его в общий код.

person Kevin Galligan    schedule 15.03.2020
comment
Если библиотека уже предоставляет свой api с помощью @objC, позволяет ли создание ее двоичного файла взаимодействовать с Kotlin / Native? или нужно предпринять дополнительные шаги, чтобы это сработало? - person Archie G. Quiñones; 16.03.2020