2016-02-23 1 views
3

J'avais l'habitude d'utiliser ALAsset, il fonctionne bien pour iOS7 ~ iOS9 pour la plupart des utilisateurs (environ 100K). Mais certains utilisateurs se plaignent de ne montrer qu'un nombre partiel de photos sur le périphérique i6, ios8/ios9. (Peut-être 1% a ce problème, je ne suis pas sûr.)ALAssetLibrary, il montre seulement le nombre partiel de photos dans toutes les photos sur certains appareils

J'ai l'i6 ios9 périphérique, mais mon appareil ne peut pas montrer le même problème. Les utilisateurs ont dit que App afficher uniquement les photos pour les deux mois passés. Comment cela se passe-t-il? Pour leur appareil, ils n'ont pas d'album de pellicule, mais le mime l'a. Je ne suis pas sûr si cela cause le problème. Comment résoudre ce problème ? Dois-je passer à PHAsset Photos à partir d'iOS8.

+0

pourrait être similaire avec [cette question] (http://stackoverflow.com/questions/25945002/how-to-enumerate-all-photos-on-ios-8-using-alassetslibrary)? aussi vérifier [cette réponse] (http://stackoverflow.com/questions/8867496/get-last-image-from-photos-app/8872425#8872425), pourrait être utile .. – 0yeoj

+0

Je ne pense pas que ce soit le même problème, mais c'est lié. Lorsque l'appareil dispose d'un album de rouleau de caméra, toutes les photos peuvent être chargées correctement dans le groupe d'albums "Rouleau de caméra". Mais pour l'appareil sans pellicule, certaines photos ne peuvent pas être chargées dans l'album "Toutes les photos". L'appareil est mis à niveau vers ios9.2.1. De toute façon, je ne connais pas la solution. J'utilise l'implémentation commune pour alassetgroup. NSUInteger groupTypes = ALAssetsGroupAll; [assetsLibrary enumerateGroupsWithTypes: ALAssetsGroupAll usingBlock: listGroupBlock failureBlock: failureBlock]; –

Répondre

1

J'ai trouvé la cause première, ALAssetLibrary ne peut pas lire certaines photos pour iOS8/iOS9. Il en résulte que iCloud est activé et optimiser pour le stockage est choisi.

https://support.apple.com/en-us/HT204264 Sur votre iPhone, iPad ou iPod, appuyez sur Paramètres> iCloud> Photos ou Paramètres> Photos & Caméra, puis sélectionnez un paramètre de stockage. activez Optimiser [périphérique] Stockage. ALAssetLibrary ne peut donc pas lire ces photos téléchargées sur iCloud. Par conséquent, ALAssetLibrary ne peut pas lire ces photos téléchargées sur iCloud. Pour les utilisateurs à contourner. 1. il peut utiliser l'application Photos pour modifier la rotation de la photo et la sauvegarder en arrière. Et ALAssetLibrary peut lire à nouveau. 2. désactiver Optimiser le stockage de l'appareil et se connecter wifi & puissance. la photo sera retirée de l'appareil par iCloud. Pour la programmation, je pense que le seul moyen est d'utiliser Photos/PHAsset pour iOS8/iOS9. Le cadre de photos peut lire la miniature et l'original d'iCloud.

Avez-vous d'autres solutions?