PHPhotoLibrary ändern Beobachter nicht genannt

Ich scheine zu sein, ein zufälliges problem, dass ich keine Ahnung habe warum das passiert ist. Ich kann nicht scheinen, um die photoLibraryDidChange:(PHChange *)changeInstance aufgerufen werden, indem der Beobachter. Ich habe mehrere leere Projekte und alle zeigen dieses Problem, die änderung Beobachter wird manchmal genannt werden beim ersten app-installation, aber nie nach, wenn ich änderungen in der Fotos-app. Ich habe auch einen reset der simulator ohne Erfolg. Ich würde schätzen jede Hilfe, die angeboten wird.

Code:

#import <UIKit/UIKit.h>
#import <Photos/Photos.h>

@interface ViewController : UIViewController <PHPhotoLibraryChangeObserver>

@end

- (void)viewDidLoad
{
    [super viewDidLoad];

    [PHPhotoLibrary requestAuthorization:^(PHAuthorizationStatus status)
     {
         if (status == PHAuthorizationStatusAuthorized)
         {
             [PHPhotoLibrary.sharedPhotoLibrary registerChangeObserver:self];

              dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0),^
              {
                 [self setup];
              });
         }
     }];
}

- (void)setup
{
    PHFetchOptions *fetchOptions = [[PHFetchOptions alloc]init];

    fetchOptions.wantsIncrementalChangeDetails = YES;

    PHFetchResult *smartAlbumsFetchResult = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeSmartAlbum subtype:PHAssetCollectionSubtypeAny options:fetchOptions];

    for (PHAssetCollection *sub in smartAlbumsFetchResult)
    {
        PHFetchResult *fetch = [PHAsset fetchAssetsInAssetCollection:sub options:fetchOptions];
    }
}

- (void)photoLibraryDidChange:(PHChange *)changeInstance
{
    NSLog(@"Not called");
}

- (void)dealloc
{
   [PHPhotoLibrary.sharedPhotoLibrary unregisterChangeObserver:self];
}
  • Was redest du da. Ich gehe auf die app "Fotos" und "Favorit", unfavorite, und löschen Sie die Bilder.
  • Tun Sie nicht Folgen? Es ist kein code. Dies ist Manipulation IN der Fotos-app, die angeblich zu notifiy Sie von änderungen.
  • Ja, ich habe eine leere single-view-Projekt, mit nichts in ihm, um zu versuchen, um herauszufinden, warum es nicht funktioniert jetzt. Nicht unhöflich sein, war für mich die letzten paar Tage, aber nicht jetzt.
  • das ist der gesamte code. Aber ich werde neu formatieren
  • Ich verkürzt den code
  • Die app läuft immer noch, und meine änderung Beobachter verwendet, um aufgerufen werden, auch wenn die app nicht im Vordergrund.
  • Ich habe backgrounding-setup in der original-app arbeiten, so würden die änderungen noch nicht gepostet werden. Das hat mein Problem dann hier!

InformationsquelleAutor klcjr89 | 2015-06-09
Schreibe einen Kommentar