Я пытаюсь сделать расширение Crosswalk в iOS (Objective-C) для своего собственного приложения, которое отображает веб-сайт в среде выполнения Crosswalk, но оно не работает. Ниже приводится подробная информация:Расширение перекрестка не работает в iOS
- Создан проект каркаса CocoaTouch в корне моего основного проекта, который является одностраничным приложением.
Добавлен следующий код в файл MyXWalkExtension.h моего CocoaTouch рамочного проекта:
#import <UIKit/UIKit.h> #import <XWalkView/XWalkView.h> //! Project version number for MyXWalkExtension. FOUNDATION_EXPORT double MyXWalkExtensionVersionNumber; //! Project version string for MyXWalkExtension. FOUNDATION_EXPORT const unsigned char MyXWalkExtensionVersionString[]; @interface MyXWalkExtension : XWalkExtension @end @interface MyXWalkExtension() - (void) jsfunc_myFunction:(UInt32*)callId message:(NSString *)myVariable; @end @implementation MyXWalkExtension - (void) jsfunc_myFunction:(UInt32*)callId message:(NSString *)myVariable { NSLog(@"MY VARIABLE: %@", myVariable); } @end
Добавлено extensions.plist (не смог найти лучший способ отображения .plist контента) в рамках проекта CocoaTouch, как следующим образом:
<plist> <dict> <key>XWalkExtensions</key> <dict> <key>xwalk.myxwalkextension.MyXWalkExtension</key> <string>MyXWalkExtension</string> </dict> </dict> </plist>
Добавлена manifest.plist в рамках проекта CocoaTouch:
<plist> <dict> <key>xwalk_extensions</key> <array> <key>item 0</key> <string>xwalk.myxwalkextension.MyXWalkExtension</string> </array> </dict> </plist>
Вызов из JavaScript следующим образом:
xwalk.myxwalkextension.MyXWalkExtension.myFunction('100');
Я проверил ли выше блочного кода в JavaScript выполняется или не & его выполнения, но я не получаю журнал в моей Xcode протоколирования консоли. Потому что я думаю, что jsfunc_myFunction
не вызывается из javascript. Я не знаю, что мне не хватает или что-то не так. Я следую crosswalk project website. Я знаю, что нам не нужно расширять среду выполнения Crosswalk в случае Android, где мы можем вызывать собственные методы Android из javascript, предоставляя интерфейс javascript, но в iOS это не так. Итак, я решил расширить время выполнения Crosswalk. Веб-сайт проекта пешеходного перехода не очень очерчен &. Я забываю встраивать расширение в свой проект, если да, как мне это сделать?