5

最近追加されたコレクションのサブタイプがあります: PHAssetCollectionSubtypeSmartAlbumRecentlyAdded。ただし assetCollectionSubtype、「最近削除された」コレクションを識別するものはありません。

これは、私の場合の「最近削除された」コレクションの説明です。 (iOS 8.1.3): DF876BFD-...-C97F4628467C/L0/040 Recently Deleted assetCollectionType=2/1000000201

これは、タイプが であることを示しますPHAssetCollectionTypeSmartAlbum。しかし、 subtype とは一体何なの1000000201でしょうか?

201PHAssetCollectionSubtypeSmartAlbumPanoramasドキュメントに従っている必要があります。

マジックナンバー1000000201は決して変わらないと信じられますか? おそらくそうではありません。

ただし、これは最近削除されたコレクションを取得する方法です。

PHFetchResult *smartAlbums = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeSmartAlbum subtype:1000000201 options:nil];

この特定PHAssetのスマート アルバムには大きな違いがあります。これはゴミ箱であるため、(再び) を削除することはできません。そのため、削除オプションをユーザーに提示する必要があるかどうかを知ることが不可欠です。

誰にもアイデアはありますか?

4

1 に答える 1

-1

「最近削除された」コレクションの選択に関しては、次の回避策があります。

PHFetchResult *smartAlbums = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeSmartAlbum
                                                                      subtype:PHAssetCollectionSubtypeAlbumRegular
                                                                      options:nil];

__block PHAssetCollection *recentlyDeletedCollection;
[smartAlbums enumerateObjectsUsingBlock:^(PHAssetCollection *smartAlbum, NSUInteger idx, BOOL *stop) {
    if ([smartAlbum.localizedTitle isEqualToString:@"Recently Deleted"]) {
        NSLog(@"Recently Deleted album is at %ld", idx);
        recentlyDeletedCollection = smartAlbums[idx];
    }
}];
于 2016-02-06T04:43:24.217 に答える