¿Cómo get todas las aplicacionesActivities para un UIActivityViewController?

¿Cómo puedo get un NSArray de todas las applicationActivities instaladas en el dispositivo?

 - (id)initWithActivityItems:(NSArray *)activityItems applicationActivities:(NSArray *)applicationActivities; 

Me gustaría eliminar uno o dos elementos y mostrar el rest de la list completa.

No estoy seguro de cómo get la list de todas las applicationActivities . Si desea excluir algunos types de actividad, puede usar la propiedad UIActivityViewController de UIActivityViewController . Según la documentation ,

Esta propiedad contiene una matriz de cadenas, cada una de las cuales corresponde al valor que encontraría en el parámetro activityType de un object UIActivity. Cada cadena que especifique indica un service que no desea que se muestre al usuario. Puede excluir services que considere que no son adecuados para el contenido que está proporcionando. Por ejemplo, es posible que no desee permitir que el usuario imprima una image específica. Si el valor de esta propiedad es nulo, no se excluyen services.

Este valor de esta propiedad es nil de forma pnetworkingeterminada.

Las cadenas de actividad se enumeran en la parte inferior de la documentation para Referencia de class UIActivity.

Se enumeran como UIActivityTypePostToFacebook, UIActivityTypePostToTwitter, etc. Estas son en realidad cadenas definidas en UIActivity.h.

Prueba esto:

 NSLog(@"%@", UIActivityTypePostToFacebook); 

Luego puede comparar con estas cadenas para mostrar un post al usuario específico del tipo de actividad.