В настоящее время у меня есть внешний код Javascript
(, который выполняется асинхронно), что приложение iOS взаимодействует и может оценивать части условно. Прямо сейчас, когда функции Javascript
возвращаются, они возвращают «обещание» iOS-приложению, которое необходимо разрешить. Есть ли способ разрешить обещание в iOS через JavascriptCore
; или я сражаюсь с проигравшей битвой здесь и должен ли я вместо этого «разрешать» все «обещания» в Javascript
перед возвратом ценностей обратно в iOS?Решение javascript в iOS с использованием JavascriptCore
2
A
ответ
0
Посмотрите на эту библиотеку: https://github.com/marcuswestin/WebViewJavascriptBridge как минимум в качестве примера.
Он не управляет js Обещание как результат JS в собственном коде, который, как я думаю, невозможен, но он реализует способ управления асинхронными вызовами JS из собственного кода.
Если я не ошибаюсь, основная логика для управления асинхронной JS называет это:
- Когда нативный код должен вызвать метод асинхронной JS, он сохраняет нативную функцию обратного вызова в реестре обратных вызовов и присвоить ему идентификатор ,
- Затем он вызывает метод JS, передающий идентификатор обратного вызова.
- Когда метод async JS заканчивается (используя Promise или что-то еще), он вызывает собственный код с использованием того же идентификатора обратного вызова.
- Это позволяет собственному коду вызывать обратный вызов, хранящийся в реестре.
Библиотека хорошо структурирована, позволяя зарегистрировать регистратор и т. Д., Но я думаю, что исходная логика для Native -> JS-вызовов в основном такова.
Смежные вопросы
- 1. Как обрабатывать javascript Обещания в iOS JavaScriptCore
- 2. Ядро JavaScriptCore на iOS 7 с использованием компиляции JIT?
- 3. Javascriptcore ios вызывает метод класса
- 4. Создание конструкторов с JavascriptCore
- 5. Внешние массивы JavaScriptCore
- 6. Передача NSobject на javascript с использованием структуры Javascriptcore от Swift iOS
- 7. iOS 8 JavaScriptCore: Где вы размещаете свои файлы JavaScript?
- 8. Как выполнить JavaScript с фреймворком JavaScriptCore?
- 9. Как построить JavaScriptCore для устройства iOS?
- 10. Сравнение функций: V8 vs. iOS JavaScriptCore
- 11. 'Ошибка компиляции встроенного языка при выполнении кода JavaScript в JavaScriptCore
- 12. iOS JavascriptCore exception detail stacktrace info
- 13. Ошибка JavaScriptCore на iOS9
- 14. Ошибка JavaScriptCore
- 15. Проблемы решение головоломки кодирования с использованием JavaScript
- 16. Решение анализа данных с использованием биффоскопа с использованием javascript
- 17. Trigger object C метод из javascript с помощью JavaScriptCore в iOS 7 в ViewControllers
- 18. UIWebview JavaScriptCore Framework test для неопределенного объекта в контексте Javascript
- 19. Как регистрировать ошибки в XCode с JavaScriptCore?
- 20. Вызов JavaScript функции в Objective-C с JavaScriptCore
- 21. Как преобразовать объект javascript в NSDictionary с помощью JavaScriptCore
- 22. IOS 7,1 JavaScriptCore: Не удается найти переменную: Float64Array
- 23. Как назначить класс переменной с JavascriptCore
- 24. Принудительная сборка мусора из JavaScriptCore виртуальной машины на iOS
- 25. Невозможно запустить proj4.js в JavaScriptCore JSContext
- 26. SpiderMonkey против JavaScriptCore vs?
- 27. JavascriptCore асинхронный обратный вызов
- 28. HTTP-запрос через JavaScriptCore в iOS7
- 29. Использование JavaScriptCore с libGDX/RobotVM
- 30. JavaScriptCore на iOS: VM Garbage Collector не автоматически emtpying