我有一个应用程序,它有一个自定义图像选择器,使用ALAssetLibrary创建一个相册选择器和图像选择器.我们已经实施了一个自定义选择器,以便我们的客户选择多个图像.此图像选择器在iOS 7下运行良好,并显示包含所有用户照片的"相机胶卷"相册.但是,在iOS 8下运行相同的应用程序时,似乎Apple已从"相册"视图中删除了"相机胶卷"相册,并且仅显示"最近的照片".从我所看到的,访问iOS 8中所有照片的唯一方法是通过Collection视图(在Photos应用程序或新的内置选择器中).不幸的是,我目前无法使用Photokit,因为我仍然需要支持我的iOS 6和7用户.有没有人知道在iOS 8(在Xcode 5中编译)运行iOS 7应用程序时使用ALAssetLibrary获取所有资产并创建自定义相机胶卷相册的方法?
UPDATE
好吧,正如我在上面的原始帖子中所述,我最初无法使用新的照片框架(PhotoKit).但是,我们最近将构建版本移至Xcode 6,现在我可以使用照片框架创建一组所有照片(请参阅WWDC ExampleappusingPhotosframework示例代码以了解如何执行此操作).
然而,就像每个人都说PhotoKit一样强大,它缺少一些关键的过滤功能.事实上,没有简单的方法可以使用带有PHFetchResult的谓词过滤原始"PhotoStream"中的照片.您只能使用公共场所.幸运的是,我想出了如何使用PHAsset描述过滤它们.如果照片位于用户的照片流中,则说明中列出的assetSource键等于2.因此,我在结果上使用快速枚举,并使用asset.description属性上的简单stringInRange过滤器将所有资源移动到不在PhotoStream中的数组(查找"assetSource = 2").它可能不是最好的解决方案,但它现在有效,因此用户不会看到本地图书馆和他们的照片流中的照片重复.至少我可以呈现所有客户的照片,并允许我的多媒体选择器与使用ALAssetLibrary的原始类一样接近.
无论如何,如果有人使用谓词有更好的解决方案,请lmk.
我正在为iOS编写一个Swift应用程序.我想知道如何从用户的相机胶卷(或者他们现在称之为的任何东西)获取图像,并将其保存在应用程序中的本地,以便我以后可以参考.怎么会这样呢?作为一个例子,假设我想获取图像并将其设置为故事板中UIImageView的图像.
我正在使用CameraRoll.getPhotos从画廊获取照片。
import {
CameraRoll,
} from 'react-native';
CameraRoll.getPhotos(fetchParams).then((data) => {
});
Run Code Online (Sandbox Code Playgroud)
我在某些android手机上的图像方向有问题。我已经能够检测到大多数三星产品中发生的情况。
它的方向取决于您拍摄照片的方式。
portrait with home button in bottom position:90º
landscape with home button left position:180º
portrait with home button in top position:270º
landscape with home button right position:0º
根据CameraRoll文档,方向值不会由返回getPhotos。
我正在尝试:
transform: [{ rotateX: '0deg' }, { rotateY: '0deg' }] 要么 rotate: '0deg' react-native-media-meta了GET的元数据信息(不适用)Image但值得注意。:(
问题是图像在我的应用程序中似乎旋转了,但是在本机库中却忽略了它们的旋转度,并正确显示为0º。
范例 …
我想使用CameraRoll拍摄照片但是被红屏打破了.
所以我试着跟随:
//print: undefined
console.log(RCTCameraRollManager);
Run Code Online (Sandbox Code Playgroud)
我想对 iphone 相机胶卷中的视频执行操作,我需要一个绝对 URI,因为我将在我的应用程序中本地使用 ffmpeg。
是否可以就地对视频进行操作?或者我是否需要将视频复制到 tmp 目录,对其进行操作,然后写回相机胶卷?
在录制视频时是否有任何方法可以添加叠加,这样当我从相机胶卷播放视频时,我可以看到叠加.
在我的react-native应用程序中,我需要拍照并将其保存到新的自定义相册中。不能通过菜单上的照片访问相册,因此我需要将相册设为私有,因此只能通过应用程序本身访问捕获的照片。我在网上搜索过,我猜可以用react-native-fs或来实现react-native-fetch-blob,但似乎只能在上使用Android。但这不是我真正需要的。您能提供任何文档,示例,代码或其他任何内容来帮助我吗?
这是我当前Camera已经创建的组件,用户可以在其中拍照,将其保存到相机胶卷中,并在需要时访问照片。
import React, { Component } from 'react';
import {CardItem, Content, Container, Body, Left, Icon, Header, Right, Footer, FooterTab, Button } from 'native-base';
import {
Platform,
StyleSheet,
Dimensions,
Text,
ListView,
View,
Alert,
TouchableOpacity,
Image,
CameraRoll,
ScrollView
} from 'react-native';
import {Actions} from 'react-native-router-flux';
import { RNCamera } from 'react-native-camera';
const instructions = Platform.select({
ios: 'Press Cmd+R to reload,\n' +
'Cmd+D or shake for dev menu',
android: 'Double tap R …Run Code Online (Sandbox Code Playgroud) 我想按日期对图片进行排序,所以我需要创建日期。我从哪里可以获得这个日期?
在图库中我的照片是为此排序的。我想在我的应用程序上对照片进行这样的排序。
我想继续使用相机胶卷。
谢谢
我的应用程序的一个功能是下载mp4文件并将其存储到本地电话相册.
我已经尝试了几种方法,结果总是相同的,它在模拟器上工作,但在实际的iPhone上没有.Xcode是5.0.1版,iPhone 4.
下面是我在使用ASIHttpRequest库发布之前的最后一次尝试时应用的代码,结果仍然相同,它在模拟器上工作,但不在手机本身.
下载:
ASIHTTPRequest* request = [ASIHTTPRequest requestWithURL:url]; // url is the address to the mp4 file
NSString* filePath = [NSString stringWithFormat:@"%@%@", NSTemporaryDirectory(), filename]; //filename is the file I save to, e.g. xxx.mp4
[request setDownloadDestinationPath:filePath];
[request setDelegate:self];
[request setDidFinishSelector:@selector[ASIRequestDone:)];
[request setDidFailSelector:@select[ASIRequestFail:)];
Run Code Online (Sandbox Code Playgroud)下载完成后,将其保存到相册(ASIRequestDone代表中)
if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum(filePath))
{
//comes to here when running in simulators
UISaveVideoAtPathToSavedPhotosAlbum(filePath, self, @selector(video:didFinishSavingWithError:cotextInfo:),nil);
}
else
{
//always comes to here when running on the actual iPhone.
}
Run Code Online (Sandbox Code Playgroud)我检查了pathFile就是这个
/private/var/mobile/Applications/xxxxxxxxxx/tmp/xxxxx.mp4
Run Code Online (Sandbox Code Playgroud)
这对我来说没问题.我没有得到的是它在模拟器上运行时工作正常,因此我不知道下一步该怎么做.(我还检查了访问相册的权限,是的,应用程序有它).
我也尝试删除兼容检查并直接进入方法UISaveVideoAtPathToSavedPhotosAlbum,它没有在委托上抛出任何错误didFinishSavingWithError …
可以使用cameraRoll在React-Native上保存视频,对于带有saveImageWithTag()的图像,这很容易,但是我找不到视频的文档。
camera-roll ×10
react-native ×5
ios ×3
download ×2
objective-c ×2
swift ×2
video ×2
image ×1
ios7 ×1
ios8 ×1
javascript ×1
photo ×1
uiimage ×1
xcode5 ×1
xcode6 ×1