相关疑难解决方法(0)

共享扩展以打开包含应用程序

我想为我的应用创建一个Android Style共享功能.我创建了一个共享扩展,当你在股票照片应用程序中选择图片并按下共享时,它会被调用.现在我想将这些图片发送到主应用程序并在那里处理.我现在的问题是:

  1. 在共享扩展程序窗口上按下按钮后iOS可以打开我的应用程序吗?
  2. 如何在主应用程序中获取图片文件?

cocoa-touch ios ios8-share-extension

22
推荐指数
3
解决办法
2万
查看次数

从iOS8自定义键盘启动包含应用程序

我想启动我的包含应用程序.

我尝试使用URL方案.

URL方案从其他地方启动了应用程序 - 所以问题不存在.

看起来这个对象是零:

   self.extensionContext
Run Code Online (Sandbox Code Playgroud)

因此我无法运行此方法:

[self.extensionContext openURL:url completionHandler:nil];
Run Code Online (Sandbox Code Playgroud)

我可以启动我的应用吗?URL方案是否可以在自定义键盘中使用?

谢谢!

ios ios8 ios-app-extension

16
推荐指数
4
解决办法
6171
查看次数

Cordova:将浏览器URL共享到我的iOS应用程序(Clipper ios共享扩展)

我想要的是

在Iphone上,当访问Safari或Chrome中的网站时,可以将内容分享给其他应用程序.在这种情况下,您可以看到我可以将内容(基本上是URL)共享到名为Pocket的应用程序.

口袋的例子

有可能吗?特别是Cordova?

iphone safari ios cfbundledocumenttypes

16
推荐指数
1
解决办法
7559
查看次数

来自App Extension的openURL

在iOS 8 beta 2上,应该可以使用app扩展中的openUrl写入发行说明中:

在此输入图像描述

但是,当我尝试使用此API(在Xcode 6 beta 2上)时,我收到以下错误:

在此输入图像描述

Beta 2是否真的解决了这个问题?

uiapplication openurl ios8 ios-app-extension

15
推荐指数
2
解决办法
1万
查看次数

在框架中覆盖故事板中的图像

我有一个框架,其中包含一个故事板和一组默认图像.该框架可以包含在多个应用程序中,目的是如果需要,应用程序可以使用自己的变体覆盖无,部分或全部默认图像.

我面临的问题是我没有找到适用于所有场景的解决方案,例如:如果框架包含一个名为Person的图像,那么框架由app A使用,它提供了自己的Person版本,以及框架由应用程序B使用,它不提供自己的Person版本然后:

如果框架使用以下代码设置图像:

let image = UIImage.init(named: "Person")
someImageView.image = image
Run Code Online (Sandbox Code Playgroud)

然后,当app A运行时,会找到并正确显示Person图像的变体.(App A在其资产目录中有Person的变体)但是,当app B运行时,不会显示任何内容.

另一方面,如果我没有使用代码设置图像(即它在故事板图像视图的Xcode属性检查器中设置),那么当运行应用程序B时,现在正确显示默认框架图像,但现在应用程序A的自定义人员图像不显示.

有没有办法可以成功地涵盖这三种情况:

一个默认图像在框架中,应用程序A和应用程序B都不希望用它们的自定义图像覆盖它,默认图像在框架中,而应用程序A想要覆盖它,但应用程序B却没有.框架中有一个默认图像,app A和app B都希望用自己的变体覆盖它.(我有一个大型的故事板,框架中有几十个图像,理想情况下我希望有一个完全不涉及代码的解决方案 - 即默认图像名称是通过Xcode的属性检查器为图像视图设置的,如果是应用程序在其资产目录中提供自己的图像版本,自动显示图像)

objective-c ios swift ios-app-extension ios10

12
推荐指数
1
解决办法
718
查看次数

与共享扩展程序中的/打开包含应用程序进行通信

这是我尝试过的没有用的东西:

  • 使用openURL尝试打开包含的应用程序

以下是我所想到的不起作用:

  • 使用本地通知提供包含应用程序的链接(从扩展程序创建本地通知)

以下是我正在考虑的选项:

  • 使用UIDocumentInteractionController和自定义文件扩展名类型来提供指向我的包含应用程序的链接(以及仅包含我的应用程序)
  • 启动"假"NSURL会话以获得以下功能:在iOS中,如果后台任务完成时您的扩展未运行,系统将在后台启动包含应用程序并调用应用程序:handleEventsForBackgroundURLSession:completionHandler:app delegate method .

确认UIDocumentInteractionController在Xcode 6.5中工作,但流程有点不稳定.NSURL的东西应该也可以,但它也有点可疑.有没有人有任何其他的想法让我的包含应用程序从共享扩展打开,或从共享扩展与它通信的想法?

ios ios8 ios-app-extension

10
推荐指数
1
解决办法
5837
查看次数

8
推荐指数
2
解决办法
4485
查看次数

如何使用iOS 10,Xcode 8中的iMessage应用程序处理OAuth样式的登录?

我正在为iOS 10设置一个需要登录社交网络的iMessage应用程序.在传统的iOS应用程序中,我们通常在AppDelegate中配置带有app id的共享实例...我还需要处理回调URL:传统上放置在AppDelegate中的2个方法(下面).

使用iMessage app/extension,没有AppDelegate.我在哪里可以放置此代码?我能够在应用程序ID配置willBecomeActiveMessagesViewController并没有得到一个实例回来了,但我也把这些方法MessagesViewController与破发点,他们从来不被称为,我相信这是防止我的成功日志中,任何帮助深表感谢!

更新:我最大的问题,甚至在弄清楚如何处理callBack之前就是如何没有openURL方法可用,有一些关于扩展的方法,但我没有成功提出任何建议的解决方案: openURL不起作用在行动扩展中

我看到它要么(1)找到一种方法在我的iMessage扩展中调用openURL,这样我就可以让SDK处理OAuth(2)创建我自己的webview,推送到网站,登录用户,存储令牌和segue回到我的应用程序(似乎没必要)或(3)创建一个iPhone应用程序,只是为了登录(即iMessage扩展打开的父应用程序和登录),再次似乎没有必要).当然,这在iMessage扩展中会很常见吗?

func application(application: UIApplication, handleOpenURL url: NSURL) -> Bool {
}

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool {   
}
Run Code Online (Sandbox Code Playgroud)

oauth ios swift

7
推荐指数
0
解决办法
352
查看次数

将我的iOS应用程序检测为Web浏览器

我正在构建一个浏览器应用程序.我希望iOS将其检测为浏览器.我尝试添加http到URL Schemes但是徒劳无功.

我试过这个答案.

browser xcode ios swift

7
推荐指数
1
解决办法
711
查看次数

openURL在Share扩展中不起作用

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

以下是Action扩展的相同问题,但我认为Share扩展能够打开包含应用程序比Action扩展更合理.共享扩展的要点是上传一个可能很大的数据,并且在不打开应用程序的情况下执行此操作的唯一方法是通过NSURLSession,这只能执行HTTP(S)上载.但是应用程序可能希望通过与HTTP(S)上载不同的机制来共享内容.

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

ios ios8 ios-app-extension

6
推荐指数
2
解决办法
4850
查看次数