Android ile Sosyal Medya Paylaşımı

Günümüzde sosyal medyanın popülerliği tartışılamaz. Dolayısıyla bir yazılım geliştirici olarak uzak kalamıyoruz. Aslında hazırlayacağımız uygulamalar için sosyal medyayı reklam açısından faydalı buluyorum. Bir kişinin arkadaş listesinde ortalama 250 civarı kişi olduğunu düşünürsek, bu kişinin hazırladığımız uygulama ile birşey paylaşması web uygulamaları için URL bilgisinin, mobil uygulamalar için uygulama isminin anında 250 kişi tarafından görülmesi demek oluyor. Tabi beğenen kişilerin zincirleme reaksiyon olarak paylaşıma devam etmeleri sonucu hazırladığınız uygulamanın tanıtıma ne denli etki yaptığını düşünebilirsiniz.

Hal böyle olunca bir kaç android uygulamaya paylaşım fonksiyonu eklemek için kolları sıvadım. Kolları sıvadım ama işler o kadar basitleşmiş ki sadece Android Intent ekleyerek paylaşımı gerçekleştiriyormuşuz. Aşağıda kodu hemen paylaşayım;

Intent sendIntent = new Intent(); sendIntent.setAction(Intent.ACTION_SEND); sendIntent.setType("text/plain"); // text/html sendIntent.putExtra(Intent.EXTRA_TEXT, ResultStr); startActivity(Intent.createChooser(sendIntent, "Share"));

Gördüğünüz gibi paylaşmak istediğiniz şeyi (bu örnekte yazıyı) 5 satır kod ile gerçekleştirebilirsiniz. ACTION_SEND işleminde oluşturacağımız bir Android Intent 'ine EXTRA_TEXT parametresi olarak paylaşmak istediğimiz yazıyı gönderdikten sonra aktivite olarak başlattığımızda paylaşım kanalı olarak tek bir kanal varsa onun üzerinden paylaşma gerçekleşir. Paylaşım tipinde yazı değil resim video kullanmak isterseniz setType("text/plain") fonksiyonunda değişiklik yapmanız gerekecektir. Bu alana MIME type (text/plain, text/html, image/bmp, image/png, video/mpeg, video/avi ...) bilgileri girilir.

Dikkat ederseniz paylaşım için kullanılacak kanal (Mesaj, facebook, linked-in, whatsapp....) belirtilmesi yapmadım. Bunun sebebi paylaşım kanalını kullanıcının belirliyor olmasıdır. İşletim sistemine yüklü olan uygulamalar işletim sisteminin sağladığı paylaşım kanalını kullanabilmeleri için kendilerini kayıt (register) ettirmeleri gerekir. Yani siz telefonunuza veya tabletinize Whatsapp ya da Facebook yüklediğinizde bu uygulamalar paylaşma özelliği için kendilerini işletim sisteminin sunduğu paylaşım kısmına kayıt ederler.

Bir geliştirici olarak paylaşım özelliğini kullanırken yukarıdaki kod dışında bir kod yazmamız gerekmez. Eğer birden fazla paylaşım kanalı varsa kullanıcı paylaşım yapmak istediğinde soldaki örnekte olduğu gibi (yüklü uygulamalara göre seçenekler değişebilir) bir liste ekrana çıkacaktır. Kullanıcının seçtiği paylaşım kanalına göre gönderilecek parametre kullanılan uygulamanın formatına göre şekil alacaktır.

Bu kısımda Facebook' a özgü bir hatadan (bug) bahsetmek isterim. İçinde URL olmayan bir text mesajı paylaşmak istediğinizde facebook seçiminden sonra gelen Facebook paylaşım ekranını boş göreceksiniz. Bu Facebook uygulamasının paylaşımda URL kullanmasından kaynaklanmaktadır. Henüz bir çözümüne rastlamadım. Çözüm üretenler burada çözümü yazarlarsa sevinirim.

Facebook dışında denediğim her uygulama (Gmail, Mesaj, Linkedin, WhatsApp) için olumlu sonuç aldım.