iPhone/iOS: cómo usar "ShareKit" para publicar solo en Facebook o solo en Twitter
sdk share facebook (3)
Sharekit proporciona un mecanismo de intercambio genérico pero también expone servicios individuales. Por ejemplo, si comparte una URL en Twitter, puede escribir el siguiente código:
#import "ShareKit/Core/SHK.h"
#import "ShareKit/Sharers/Services/Twitter/SHKTwitter.h"
...
SHKItem *item = [SHKItem URL:url title:@"A title"];
[SHKTwitter shareItem:item];
Todo esto se explica en la documentación , pero no tema explorar los archivos de encabezado de los servicios individuales.
En mi aplicación para iPhone, tengo dos botones, etiquetados "Facebook" y "Twitter". Quiero usar el marco Sharekit que hace que compartir sea muy simple. Pero como se muestra en el código de ejemplo de ShareKit, solo puedo mostrar muchos servicios para compartir, que no quiero incluir. Quiero que mi botón de "Facebook" solo muestre el servicio de intercambio de Facebook, y lo mismo con Twitter. ¿Cómo puedo modificar ShareKit para que funcione así?
También tuve el mismo problema en una de mis aplicaciones, y traté de obligar a compartirlo para que hiciera precisamente eso.
Sin embargo, ShareKit no está hecho para eso, sino para proporcionar una amplia gama de opciones de uso compartido, por lo que incluso después de la modificación, descubrí que no era una solución muy elegante o eficiente.
Ahorrará un poco de tiempo, claro, pero si quiere una solución atractiva y elegante, le sugiero que integre Twitter y Facebook usted mismo. Lleva un poco de tiempo, pero puede definir el comportamiento exactamente como lo desea, y el tema de la interfaz se adapta mejor a su aplicación.
Actualización :
Como esta respuesta todavía es popular, solo quería agregar que con iOS 5 y iOS 6, hay mucha menos necesidad de Sharekit
. Muchas de las opciones de uso compartido populares ahora están integradas en el sistema operativo. Dicho esto, esta respuesta sigue siendo válida para los servicios para compartir que no están incorporados en el dispositivo, o si simplemente está más cómodo con Sharekit.
Te mostraré cómo hacerlo para Facebook, Twitter es exactamente lo mismo, simplemente cambia todas las instancias de Facebook a Twitter
Primero, #import "SHKFacebook.h"
luego en el método de destino de tu botón, pon lo siguiente:
SHKItem *item; //This creates the Sharekit Item
NSURL *url = [NSURL URLWithString:@"http://itunes.apple.com/us/app/...?mt=8"];
El NSURL
debe ser un enlace a su aplicación en la tienda de aplicaciones. De esta forma, si alguien ve una publicación hecha en Facebook y hace clic en ella, se dirigirá a la tienda para que pueda descargarla. Hablando en términos generales, esto es opcional, pero ¿por qué no intentarías obtener nuevas descargas con esta línea adicional?
Ahora tenemos que configurar el SHKItem
siguiente manera:
item = [SHKItem URL:url title:[NSString stringWithFormat:@"I''m playing someGame on my iPhone! My Highscore is %i, think you can beat it?", highScoreInt]];
Luego configura la publicación de esta manera:
item = [SHKItem URL:url title:@"Share Me!"];
El parámetro del título NO es personalizable por el usuario. Lo que establezca aquí, el usuario no podrá cambiar. Tendrán la oportunidad de agregar su propio texto además de lo que sea que pongas allí.
Finalmente mostrar el artículo:
[SHKFacebook shareItem:item];
Espero que esto ayude. Como dije, simplemente cambie los Facebook en esta publicación a Twitter. Déjame saber en un comentario si necesitas más ayuda.