问题标签 [share-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.
ios - 如何在 iOS 共享扩展中正式处理未经身份验证的用户?
也就是说,Apple规定的惯用方法是什么?对于任何建议,请解释应该如何做和/或提供官方指南的链接。这应该是一个足够常见的场景,但我只能找到解决方法。
从另一端接近这一点,我知道UserDefaults(suiteName:)
并且Keychain services
可以从包含的应用程序中使用它来与扩展程序共享有关经过身份验证的用户的信息,但是如果用户安装了应用程序并直接尝试使用其扩展程序共享内容而没有曾经登录(或注册)?
要求用户登录包含的应用程序?(在自定义视图中?扩展默认是模态的。)
在扩展中重新实现身份验证?(或者通过自定义框架共享?这可能吗?)
切换到包含应用程序然后返回?除了 Today 扩展外,这似乎不受支持,但文档中描述的机制已用于解决方法(SO 线程:1、2、3)。
使用 Firebase在此答案中的第 2 项的(丑陋)示例实现。
ios - 如果 NSExtensionActivationRule 设置为仅用于音频,则共享扩展不会出现在支持的应用程序中
我正在尝试创建一个共享扩展,用户可以在其中从任何有能力的应用程序上传她的录音。该文档甚至有一个简单的示例(请参阅Declaring Supported Data Types for a Share or Action Extension)(也在此 SO 答案中提出),但它不适用于任何录音机(在 iOS 10.3.3、iPad 上)。
看着统一类型标识符参考,我需要public.audio
。共享扩展中的相关条目Info.plist
:
为了缩小范围,我尝试更改NSExtensionActivationRule
为public.mpeg4
and public.audiovisual-content
,结果相同。
当我更改NSExtensionActivationRule
为符合时public.image
,它会显示在照片应用程序中:
更改NSExtensionActivationRule
为TRUEPREDICATE
字符串也会使其最终出现在音频应用程序中,但当然,这不会在 App Store 中被接受。
我还尝试了干净启动的上述每个步骤(即干净 + 干净构建文件夹 + 删除 DerivedData 内容 + 从 iPad 中删除应用程序),但结果相同。
这个 SO question似乎也很相关,但更改共享扩展的部署目标并没有帮助。
我错过了什么吗?
ios - iOS 分享扩展 - 发送大视频
所以我正在尝试发送一个大的视频文件(超过 100 mb),每当我使用 访问视频文件时dataWithContentsOfURL
,扩展都会终止。这适用于较小的文件。
我应该如何解决它?
objective-c - 我现有的通用项目没有显示共享扩展
我正在向现有的通用应用程序添加共享扩展,但它从未出现在共享菜单中。xcode 9.3 ,父应用和扩展 9.3 的部署目标
添加xcode的步骤
- 文件 -> 新建 -> 目标 -> 共享扩展
- 共享扩展的所有证书+自动包含应用程序。
- 为机器人应用程序和扩展启用应用程序组。
- 为应用程序和扩展程序选择相同的应用程序组。
- 使用 safari 构建应用程序。
构建成功,并且 safari 可以正常打开,但在共享表上看不到我的应用程序扩展。
然后使用上述相同的步骤创建新的示例应用程序,它可以正常工作。
我试图解决问题的事情
- 创建了新的应用程序组。
- 部署目标更改为 11.3
- 更改激活规则
我需要你的宝贵建议。提前致谢。
ios - 我可以以编程方式将我的应用程序放在共享菜单的首位吗?
作为标题。我可以以编程方式将我的应用程序放在共享菜单的首位吗? 在此处输入图像描述
ios - 分享扩展iOS,如何在活动表视图中启用我的应用程序?
我为我的应用程序创建了一个共享扩展,它工作正常。ActivityView
但我的应用程序默认禁用。如何启用我的应用程序,ActivityView
以便用户在首次安装我的应用程序时可以在共享表中看到我的应用程序?
我不知道这是否可能,但看看应用程序LINE,每次安装它时它总是启用的。
ios - NSItemProvider loadItemForTypeIdentifier 导致内存泄漏?
我有以下问题:
我正在尝试将 Messenger 中的图像(我已实现共享扩展)共享到我的应用程序,并且我正在使用此代码加载图像:
其中标识符是(NSString*) kUTTypeImage。由于某种原因,这导致了泄漏或类似的事情 - 它正在进入didReceiveMemoryWarning。请注意,仅当我尝试使用 Messenger 共享图像时才会发生这种情况,如果我尝试从照片应用程序共享它,它工作正常。有人可以给我一个想法来解决这个问题吗?