问题标签 [ios-app-extension]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2057 浏览

ios - 带有 App Group 的 NSUserDefault 在 iOS 8 Beta3 中不起作用

我必须将Boolean价值保存到NSUserDefault我的应用程序中custom keyboard extension并与应用程序组共享。

我的代码在iOS 8Beta1 中工作。

但不在 iOS 8 Beta3 中。当我从中检索Boolean值时NSUserDefault,它什么也不返回,我无法从自定义键盘扩展加载。

我也试过initWithSuiteNamein NSUserDefault。我只有一个解决这个问题或 iOS 8 Beta3 的错误吗?

0 投票
1 回答
304 浏览

ios8 - 选定文本的 iOS 8 扩展

在 iOS 8 中,我们现在可以创建与其他几种应用程序中的“扩展点”相匹配的扩展:“今日”扩展显示为锁定和通知屏幕上的视图,“共享”扩展可以打开数据和文件其他应用程序等等

0 投票
1 回答
476 浏览

ios - 在 iOS 8 beta 中开发应用扩展的最佳实践

我想知道现在在 iOS 8 测试版期间开发应用程序扩展的最佳实践是什么。我的意思是,由于 XCode 5 不支持应用程序扩展所需的权利和目标(应用程序组,小部件目标等)并且 XCode 6 不支持提交到应用商店,有没有一种好方法可以确保我们可以开发和部署到应用商店,编译旧项目等?

当然有只创建一个分支的 SCM 方法,但我想知道在 XCode 中是否有任何方法可以解决这个问题?

0 投票
1 回答
932 浏览

ios - 如何在 iOS 8 中使用带有 NSNotificationCenter 的小部件

我想通过NSNotificationCenter 在 ios8 中使用来创建一个小部件,这可能吗?如何使用WidgetsNSNotificationCenter中的。请帮我。

0 投票
1 回答
218 浏览

ios - iOS8 扩展 - 在 iOS 5/6/7 上会发生什么?

我有一个应用程序是为支持旧版本的 iOS 而开发的,但我最近开始在 iOS8 中开发 Today 扩展。现在我的问题是,我的应用在商店中会发生什么?它会忽略它并使其成为iOS8独有的吗?如果没有,我想知道当用户在 iOS 7 下运行它时会发生什么?

我完全没有找到答案,有没有人比我的研究更幸运?

在此先感谢,拉斯洛

0 投票
1 回答
372 浏览

ios - /Today-View 中不存在应用程序

重新启动 Xcode 后,当我尝试在 iOS 8 中启动今天的扩展时,我收到了这条消息。还有其他人吗?

0 投票
1 回答
2675 浏览

ios - Today Extension Widget 内容更新

假设我正在制作一个股票行情小部件(又名今日扩展)。虽然小部件在屏幕上可见,但我想每分钟定期更新内容。我的理解是小部件不能直接进行网络调用,也不能直接与包含的应用程序通信。小部件必须从包含的应用程序中获取其内容。要从包含的应用程序中获取内容,我知道的唯一方法是通过一个公共应用程序组共享一个公共数据存储。当然,我可以使用后台应用程序刷新,但后台应用程序刷新没有得到足够频繁的调用,并且不能保证。

有什么办法可以完成上述要求吗?

0 投票
1 回答
2376 浏览

ios - iOS8:扩展存储提供程序(导入、导出、移动)不起作用

我正在开发我的存储提供程序并使用 Apple 的“NewBox”(它的链接已过期)示例代码作为主机应用程序。理想情况下,我希望看到我可以将文件从存储提供商导入(复制)到我的 NewBox 的沙箱或导出/移动文件到其他应用程序。

在 NewBox 主机应用程序中,当我想导入文件时,我使用:



一旦我拿起一个文件,在我的 UIDocumentPickerExtensionViewController 中,我调用:


调用dismissGrantingAccessToURL 后,选择器的视图将关闭并返回到宿主应用程序,并且将调用宿主应用程序的didPickDocumentAtURL。

但是,“didPickDocumentAtURL”接收的是我选择的原始文件的 URL,而不是系统复制到 NewBox 沙箱的新 URL。这对于出口和搬家的情况也很熟悉。我误解了导入/导出/移动吗?我认为这个关于文件的操作,例如复制到主机应用程序的沙箱是由系统完成的,主机应用程序将获得要访问的文件的新 URL。

我在iOS8 beta4上试过了,这个问题依然存在。

谢谢!

0 投票
1 回答
351 浏览

ios - 每次显示通知中心时都会重新创建 TodayViewController

在尝试为 iOS 8 开发 Today Extension 时,我发现了一个奇怪的问题。每次用户打开通知中心时,似乎都会重新创建我正在使用的视图控制器。这意味着没有数据保留,因此我无法知道扩展是否需要更新。

想要这样做的主要原因是我想保留小部件的高度(使用preferredContentSize)。问题是当视图加载时,这个值总是被重置,这导致小部件的大小跳跃。股票小部件是它应该如何工作的一个例子,他们显然已经解决了这个问题,所以必须有某种方法来保留不同“会话”之间的数据。我还可以从调试器中得知该进程继续运行,因此它只是因为 Apple 代码中的某些内容强制重新创建视图控制器。

我的问题是,这是一个错误吗?还是基于我缺少的某些设置或某些属性?或者它可能只是它应该工作的方式?如果是这样,解决方法是什么?

0 投票
5 回答
5573 浏览

ios - openURL 在共享扩展中不起作用

尝试[self.extensionContext openURL:... completionHandler:...];在 iOS 8 Share 扩展程序中使用来打开包含的应用程序永远不会打开应用程序,并且总是以成功 = NO 调用完成处理程序。

是与操作扩展相同的问题,但我认为共享扩展能够打开包含应用程序比操作扩展更合理。Share 扩展的重点是上传潜在的大量数据,而无需打开应用程序的唯一方法是 through NSURLSession,它只能进行 HTTP(S) 上传。但是应用程序可能希望通过不同于 HTTP(S) 上传的机制来共享内容。

Apple 文档没有说明openURL...不能用于任何特定类型的扩展。很难知道这是错误还是预期行为。没有关于此的官方信息。