iOS16系统根据PHAsset判断是否在云上

简介: iOS16系统根据PHAsset判断是否在云上

iOS16系统根据PHAsset判断是否在云上

-(BOOL)getIsInICloudWithAsset:(PHAsset *)asset
{
    if(asset && [asset isKindOfClass:PHAsset.class])
    {
        // asset是一个您想要为其获取信息的PHAsset对象
         NSArray *resourceArray = [PHAssetResource assetResourcesForAsset:asset];
          
         if (resourceArray.count >= 1){
             ///本地是否可用:NO 代表icould 图片
             // If this returns NO, then the asset is in iCloud and not saved locally yet
              return ![[resourceArray.firstObject valueForKey:@"locallyAvailable"] boolValue];
         }
         NSLog(@"asset 资源信息 resourceArray = %@", resourceArray);
          
         if ([[resourceArray.firstObject valueForKey:@"locallyAvailable"] boolValue] == NO){
             NSLog(@"图片 不在本地 isLocallayAvailable == NO");
         }else{
             NSLog(@"图片 在本地 isLocallayAvailable == YES");
         }
         return NO;
    }
    return NO;
}

注意:iOS16下面的方法获取到的都是NO,并列相信的网上的方法,要看具体系统的。

-(BOOL)getIsInICloudWithAsset:(PHAsset *)asset
{
    __block BOOL isICloudAsset = NO;
    if(asset && [asset isKindOfClass:PHAsset.class])
    {
        PHImageRequestOptions *options = [[PHImageRequestOptions alloc] init];
        options.resizeMode = PHImageRequestOptionsResizeModeFast;
        options.synchronous = true;
        [[PHImageManager defaultManager] requestImageForAsset:asset targetSize:CGSizeMake(80, 80) contentMode:PHImageContentModeAspectFill options:options resultHandler:^(UIImage *result, NSDictionary *info) {
            if ([[info objectForKey: PHImageResultIsInCloudKey] boolValue]) {
                isICloudAsset = YES;
            }}];
        
    }
    return isICloudAsset;
}
目录
相关文章
|
1月前
|
搜索推荐 Android开发 iOS开发
安卓与iOS系统的用户界面设计对比分析
本文通过对安卓和iOS两大操作系统的用户界面设计进行对比分析,探讨它们在设计理念、交互方式、视觉风格等方面的差异及各自特点,旨在帮助读者更好地理解和评估不同系统的用户体验。
45 1
|
1月前
|
搜索推荐 Android开发 iOS开发
探析安卓与iOS系统的优劣
【2月更文挑战第7天】安卓与iOS是当今手机市场上最主流的两款操作系统,各有优劣。本文将从用户体验、开放程度、生态系统等方面对两者进行深入探析,以期帮助读者更好地了解它们的特点。
|
1月前
|
Android开发 数据安全/隐私保护 iOS开发
安卓与iOS系统的发展趋势与比较分析
【2月更文挑战第6天】 在移动互联网时代,安卓和iOS系统作为两大主流移动操作系统,各自呈现出不同的发展趋势。本文将从技术角度出发,对安卓和iOS系统的发展方向、特点及未来趋势进行比较分析,以期为读者提供更深入的了解和思考。
56 4
|
3天前
|
存储 安全 编译器
我给 iOS 系统打了个补丁——修复 iOS 16 系统键盘重大 Crash
我给 iOS 系统打了个补丁——修复 iOS 16 系统键盘重大 Crash
|
18天前
|
人工智能 vr&ar Android开发
安卓与iOS系统的发展趋势及影响分析
在移动互联网时代,安卓和iOS作为两大主流移动操作系统,在不断发展变化中展现出不同的特点和发展趋势。本文从技术性角度出发,分析了安卓和iOS系统的发展趋势,并探讨了它们对移动设备市场和用户体验的影响,帮助读者更好地理解当前移动操作系统的发展方向和未来可能的变化。
17 0
|
23天前
如何解决iOS16系统app首次启动总是弹出允许粘贴提示框问题
如何解决iOS16系统app首次启动总是弹出允许粘贴提示框问题
30 0
如何解决iOS16系统app首次启动总是弹出允许粘贴提示框问题
|
23天前
|
安全 开发者 iOS开发
iOS16系统手机设置开启开发者模式才能安装ipa包
iOS16系统手机设置开启开发者模式才能安装ipa包
28 1
|
23天前
|
iOS开发
iOS13.6.1系统XR手机图文按钮显示不全问题
iOS13.6.1系统XR手机图文按钮显示不全问题
23 0
|
23天前
|
iOS开发
iOS16.1系统由于一个系统弹窗无法取消,导致屏幕卡死无法关机问题及解决方案
iOS16.1系统由于一个系统弹窗无法取消,导致屏幕卡死无法关机问题及解决方案
30 0
|
24天前
ios15从隐藏系统导航栏页面进入显示系统导航栏页面后,期望系统导航栏背景色为白色,但是导航栏背景变成黑色问题
ios15从隐藏系统导航栏页面进入显示系统导航栏页面后,期望系统导航栏背景色为白色,但是导航栏背景变成黑色问题
23 0