在iOS共享扩展中使用动态Javascript

时间:2015-03-30 08:07:49

标签: ios ios8 ios-app-extension ios8-share-extension

我正在为iOS 8开发一个共享扩展程序,看起来我可以在页面上运行javascript代码来获取一些信息,例如法师的标记

但是在Apple文档中它说javascript代码必须在.js文件中,但是我的javascript代码来自服务器并且它是动态的。

是否可以运行从服务器下载的javascript,还是可以在每次需要使用时更改js文件内容?

1 个答案:

答案 0 :(得分:0)

您无法使用当前共享扩展系统中的内置支持来执行此操作。

Javascript文件需要在Info.plist密钥的值的扩展程序NSExtensionJavaScriptPreprocessingFile中按名称列出。在那里命名的文件需要存在于应用扩展程序包中。但是捆绑包不可写,因此您无法替换或更改文件。

可能能够像你描述的那样做:

  1. 包含一个基本的JS文件,只将整个页面源返回到您的扩展程序。
  2. 使用JavaScriptCore.framework进一步处理您的扩展程序中的数据。
  3. 我不知道为什么这样做不会起作用,但我还没有尝试过,这有点不同寻常。不过,鉴于您的需求,值得调查。