zoukankan      html  css  js  c++  java
  • iOS中区分照片的来源

    原理就是通过枚举出每个assets group,然后取得group property,group property是个整数,对应头文件中的一些枚举值。用这个可以判断照片是从哪来的(相机胶卷、照片流、相册),进一步的可以结合persistent id来判断照片的来源是从设备上创建还是来自于我的电脑

    ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];

    [library enumerateGroupsWithTypes:ALAssetsGroupAll

    usingBlock:^(ALAssetsGroup *group, BOOL *stop)

    {

    NSLog(@"%@", group);

    [group setAssetsFilter:[ALAssetsFilter allAssets]];

    NSLog(@"名称:%@", [group valueForProperty:ALAssetsGroupPropertyName]);

    NSNumber* groupType = [group valueForProperty:ALAssetsGroupPropertyType];

    switch ([groupType unsignedIntegerValue]) {

    case ALAssetsGroupAlbum:

    {
    NSLog(@"来自我的电脑或者是在设备上创建");

    NSString* persistentID = [group valueForProperty:ALAssetsGroupPropertyPersistentID];

    if ([[persistentID substringWithRange:NSRangeFromString(@"0,8")] isEqualToString:@"00000000"])

    {
    NSLog(@"来自我的电脑");
    }

    break;
    }

    case ALAssetsGroupSavedPhotos:

    NSLog(@"相机胶卷");
    break;

    case ALAssetsGroupPhotoStream:

    NSLog(@"我的照片流");
    break;

    default:
    break;
    }
    }
    failureBlock: ^(NSError *error)
    {
    NSLog(@"No groups");
    }];
     
  • 相关阅读:
    [ SHOI 2012 ] 随机树
    [ BZOJ 4318 & 3450 / CodeForces 235 B ] OSU!
    [ HNOI 2015 ] 亚瑟王
    [ JSOI 2015 ] Salesman
    [ ZJOI 2007 ] 时态同步
    [ Luogu Contest 10364 ] TG
    [ CodeForces 17 E ] Palisection
    [ BZOJ 2160 ] 拉拉队排练
    Manacher 学习笔记
    [ CodeForces 865 D ] Buy Low Sell High
  • 原文地址:https://www.cnblogs.com/fuunnyy/p/4961302.html
Copyright © 2011-2022 走看看