Estoy trabajando en una aplicación de Iphone y puedo enumerar activos usando la biblioteca de Assets y cargarlos en una vista de tabla. El usuario puede eliminar una fila (una imagen/video) en la aplicación, pero ¿cómo ACTUALizo el álbum de fotos de Iphone directamente desde mi aplicación? De lo contrario, al actualizar, la vista de tabla volverá a cargar el elemento eliminado anteriormente.Eliminar un activo (foto o video) de IPhone en IOS
Respuesta
Posible duplicación de https://stackoverflow.com/a/11058934/300292. Respuesta simple: no puedes. La aplicación Fotos es el único lugar donde puede eliminar activos. Lo cual probablemente sea una buena cosa: no querría que ninguna aplicación de lo que sea que sea capaz de borrar todas sus fotos, ¿verdad?
Tarde pero para otros usuarios ayudará.
Como sabemos, solo la aplicación de fotos puede eliminar imágenes. En tal situación, recuperé todas las imágenes de las fotos a través de alassets, las visualicé en una galería personalizada, le otorgué al usuario una opción para seleccionar múltiples imágenes de los activos para guardarlas en el directorio telefónico. A continuación, estoy usando mi galería de aplicaciones en lugar de la galería de fotos. He dado la opción en la aplicación para importar imágenes desde fotos a la galería de aplicaciones (que es una carpeta de directorio de documentos de imágenes) en cualquier momento en la aplicación.
en ios8 borrar fotos es posible usando las fotos Marco
Consulte la documentación de Fotos Marco
Para la eliminación de los activos se refieren a PHAssetChangeRequest
+ (void)deleteAssets:(id<NSFastEnumeration>)assets
donde assets
es una matriz de PHAsset
objetos para ser eliminado
+
Para borrar colecciones se refieren a PHAssetCollectionChangeRequest
+ (void)deleteAssetCollections:(id<NSFastEnumeration>)assetCollections
https://developer.apple.com/documentation/photos/phassetchangerequest/1624062-deleteassets
https://developer.apple.com/documentation/photos/phassetcollectionchangerequest/1619453-deleteassetcollections
No estoy convencido de que una aplicación pueda eliminar activos de la biblioteca de fotos. Me gustaría ver un ejemplo. – coco
qué ocurre si solo tengo la imagen y el identificador local de la imagen como "AF508E2B-6B00-4E26-8A2B-B160C74478A9/L0/001". entonces, ¿cómo eliminar la imagen del álbum personalizado en la galería? –
Como dijo Ted, esto es ahora posible en iOS 8 utilizando el servicio de fotos. Es bastante limpio en realidad. Debe enviar una solicitud de cambio a la fototeca. Aquí hay un ejemplo.
[[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
[PHAssetChangeRequest deleteAssets:arrayOfPHAssets];
} completionHandler:^(BOOL success, NSError *error) {
NSLog(@"Finished deleting asset. %@", (success ? @"Success." : error));
}];
Asegúrate de haber importado fotos y obtenido la autorización del usuario. (Que probablemente lo hizo para mostrar la imagen ya)
PHAssetchangeRequest - deleteAssets https://developer.apple.com/documentation/photos/phassetchangerequest/1624062-deleteassets PHPhotoLibrary Clase - authorizationStatus https://developer.apple.com/documentation/photos/phphotolibrary/1620745-authorizationstatus
¿Qué es arrayOfPHAssets? Quiero eliminar un solo video del álbum. Me puedes ayudar ? – Gaurav
Adición de una respuesta a una vieja pregunta aquí, porque a menudo nos preguntan para la prevención de pantalla como parte de una solución de prevención de pérdida de datos (DLP). Puede (a) registrarse para recibir notificaciones de captura de pantalla y (b) solicitar al usuario que elimine cuando ocurra, pero no hay forma de hacerlo de manera silenciosa o secreta. Aquí está un ejemplo de código completo de trabajo:
func applicationDidBecomeActive(application: UIApplication) {
registerForScreenShotNotifications()
}
func registerForScreenShotNotifications() {
NSNotificationCenter.defaultCenter().addObserverForName(UIApplicationUserDidTakeScreenshotNotification, object: nil, queue: NSOperationQueue.mainQueue()) { (notification) in
print("Yep they took a screenshot \(notification)")
let assetToDelete = self.getLastImage()
if let assetToDelete = assetToDelete
{
PHPhotoLibrary.sharedPhotoLibrary().performChanges({
PHAssetChangeRequest.deleteAssets([assetToDelete])
}, completionHandler: { (success, error) in
print("Success \(success) - Error \(error)")
})
}
}
}
// NOTE : You should ask for permission to access photos before this
func getLastImage() -> PHAsset? {
let fetchOptions = PHFetchOptions()
fetchOptions.sortDescriptors = [ NSSortDescriptor(key: "creationDate", ascending: true) ]
let fetchResult = PHAsset.fetchAssetsWithMediaType(.Image, options: fetchOptions)
let newestAsset = fetchResult.lastObject
return newestAsset as! PHAsset?
}
El resultado es este:
- 1. Transmisión de video en vivo desde ios
- 2. Relativelayout o LinearLayout en ios iphone development?
- 3. iOS botón Eliminar - Objetivo C
- 4. animación ios como foto de correo electrónico
- 5. iOS SDK AVFoundation ... ¿Cómo redacto un recurso de vídeo con un activo de dibujo
- 6. Creación de miniaturas para video en iOS
- 7. transmisión de video DESDE un iPhone
- 8. cómo capturar video en iPhone
- 9. biblioteca de edición de video en IOS
- 10. iOS: la foto cargada en Facebook no siempre carga
- 11. Cómo reproducir un video desde una URL local o de un servidor en iOS
- 12. Transmitir transmisión de video en vivo iPhone SDK de iPhone
- 13. Cómo implementar DRM de video en iOS
- 14. Cómo grabar video en iphone
- 15. iOS gris oscuro cuadro estilo activo
- 16. Obtener imagen de un fotograma de video en iPhone
- 17. iOS: preinstalación de video AVPlayer
- 18. Descarga progresiva de video en iOS
- 19. iphone ios ejecutándose en un hilo separado
- 20. Incrustar video HTML5 para Mobile Safari en un iPhone 3GS frente a un iPhone 4
- 21. ¿Cómo obtener la última foto en la biblioteca de iPhone?
- 22. Cómo reproducir secuencias de video con MPMoviePlayerController en iOS
- 23. IPhone: Video API: transmisión de video en vivo modifique
- 24. Carga de video con iPhone
- 25. HTML5: "Reproducción" manual de un video dentro de un lienzo, en IOS Safari
- 26. ¿Cómo puedo eliminar mi aplicación de empresa iOS en el iPhone de un determinado usuario?
- 27. Reproducción de video inverso en iOS
- 28. Tutorial de transmisión de video en vivo de iPhone
- 29. Transmitir video Desde iPhone o Android a RTMP
- 30. iOS obtener velocidad de cuadros de video
sólo quería estar seguro. Gracias. –