Objective c 我可以在iOS模拟器中放一张实时照片吗?

Objective c 我可以在iOS模拟器中放一张实时照片吗?,objective-c,simulator,phlivephoto,Objective C,Simulator,Phlivephoto,我想创建一个应用程序来显示实时照片。但是我没有iphone6s。是否有机会将实时照片放入iOS模拟器? 谢谢 我发现的唯一方法非常笨拙:将一张实时照片放入你的iCloud照片流,然后将你的模拟器连接到你的iCloud帐户。实时照片将在模拟器的照片库中提供 正如您所料,“拍摄现场照片…”这一步可能会很棘手——您可能需要一位拥有iPhone 6s/6s+的朋友来向您发送信息。尽管Facebook和Google Photos等一些服务支持在应用程序中查看实时照片,但它们似乎不支持将照片下载到您的照片库

我想创建一个应用程序来显示实时照片。但是我没有
iphone6s
。是否有机会将实时照片放入
iOS模拟器

谢谢

我发现的唯一方法非常笨拙:将一张实时照片放入你的iCloud照片流,然后将你的模拟器连接到你的iCloud帐户。实时照片将在模拟器的照片库中提供


正如您所料,“拍摄现场照片…”这一步可能会很棘手——您可能需要一位拥有iPhone 6s/6s+的朋友来向您发送信息。尽管Facebook和Google Photos等一些服务支持在应用程序中查看实时照片,但它们似乎不支持将照片下载到您的照片库中,同时保留其实时性。

自最初询问/回答此问题以来,界面有了很大改进。现在很容易做到这一点

  • 转到照片应用程序,找到要放在(模拟)设备上的实况照片
  • 选择照片,转到文件->导出->导出n张照片的未修改原件
  • 保存的文件将导出到您的桌面。每个LivePhoto将有两个文件
  • 将两个文件(每个实时照片)拖到模拟器设备上
  • 实时照片将被创建并自动放置在模拟设备的照片库中

原始答复:

我就是这样做的。使用PhotosUI界面,我的应用程序请求一张实时照片。使用它提供的PHASET,我保存了.mov文件的本地副本和高质量的.png图像。这两个文件是“LivePhoto”。
在Xcode中,我转到手机已连接的设备,选择应用程序,单击底部的设置cog图标,然后选择下载容器。转到Finder,右键单击我刚下载的.xcappdata文件,选择ShowPackageContents,这些文件就是我编写它们的地方。我将它们拖到应用程序中(Xcode是打开的-将它们放在左边的navigator窗格中),它们将被添加到应用程序包中。

可以将实时照片放入模拟器中,您需要一个视频文件和一个图像文件(因为实时照片是这两个文件的组合)。然后使用照片框架,您可以将现场照片保存在多媒体资料中

PHPhotoLibrary.shared().performChanges({
        let request = PHAssetCreationRequest.forAsset()

        request.addResource(with: .photo, fileURL: imageUrl, options: nil)
        request.addResource(with: .pairedVideo, fileURL: videoUrl, options: nil)


    }) { (success, error) in

        print(success)
        print(error?.localizedDescription ?? "error")
    }

我想你可以,但我的Mac电脑上没有实时照片,所以我无法测试它。有相当多的项目展示了如何拍摄现场照片。也许你可以看看这些设计帮助。