it-swarm.com.ru

Ищем примеры Android Facebook SDK

Я просмотрел весь интернет и не могу найти то, что искал ...

Я просто пытаюсь найти сайт с некоторыми примерами того, как использовать ОФИЦИАЛЬНЫЙ Facebook Android SDK http://github.com/facebook/facebook-Android-sdk

Если быть точным, я хотел бы увидеть несколько примеров использования уведомлений и простой загрузки фотографий. Но я возьму все, чтобы помочь почувствовать использование SDK. 

Если кто-нибудь знает какие-либо примеры, пожалуйста, поделитесь большое спасибо!

15
brybam

Несколько недель назад я задал похожий вопрос относительно официального Android SDK Facebook и размещения контента на стене ( Android/Java - Размещать простой текст на стене Facebook? ). Это должно помочь вам понять, что значит публиковать текст на стене. Я должен отметить, что вам нужно сначала создать приложение Fackbook и подать заявку на API-ключ от Fackbook.com ( https://kunukd.com/ ) ... если он спросит о платформе приложения Вы намерены создать, выберите мобильный.

Вы можете изменить код в ссылке на переполнение стека, которую я разместил (выше), чтобы публиковать фотографии тоже. Однако в настоящее время, согласно официальной странице git для Android SDK Facebook (в разделе «Известные проблемы»):

3. Бинарных параметров API (таких как загрузка картинок) пока нет поддерживается - скоро будет ...

Таким образом, хотя вы можете опубликовать фотографию на своей стене, если у вас есть URL-адрес файла изображения (файл должен быть уже в Интернете), вы не можете использовать этот SDK для отправки двоичных/байтовых данных фотографии с Android устройство (пока ... по состоянию на 24.07.10). По крайней мере, это то, что я понял из заявления выше.

Замените следующие строки примера кода, который я разместил в другом посте переполнения стека (ссылка выше):

Bundle parameters = new Bundle();
parameters.putString("message", "this is a test");// the message to post to the wall
facebookClient.dialog(this, "stream.publish", parameters, this);// "stream.publish" is an API call

с этим

Bundle parameters = new Bundle();
parameters.putString("message", "Test Photo");
parameters.putString("attachment", "{\"name\":\"My Test Image\","
+"\"href\":\""+"http://www.google.com"+"\","
+"\"media\":[{\"type\":\"image\",\"src\":\""+"http://www.google.com/logos/mucha10-hp.jpg"+"\",\"href\":\""+"http://www.google.com"+"\"}]"
+"}");
facebookClient.dialog(this, "stream.publish", parameters, this);

и вы сможете размещать фотографии на своей стене (а также текст и ссылки).

Для получения дополнительной помощи по структурированию строки «attachment», перейдите сюда: http://www.mobisoftinfotech.com/blog/Android/845/ .

Помимо этого, рассмотрите возможность использования стороннего пакета или дождитесь обновления официального SDK, если вам нужно опубликовать фотографии в альбоме прямо с устройства.

15
RyanM

Вы можете сделать это следующим образом:

byte[] data = null;
try {
    ContentResolver cr = mainActivity.getContentResolver();
    InputStream fis = cr.openInputStream(localSnapshotUri);
    Bitmap bi = BitmapFactory.decodeStream(fis);
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    bi.compress(Bitmap.CompressFormat.JPEG, 100, baos);
    data = baos.toByteArray();              
} catch (FileNotFoundException e) {
    e.printStackTrace();
}     

Bundle params = new Bundle(); 
params.putString("method", "photos.upload");          
params.putByteArray("picture", data);

AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook);
mAsyncRunner.request(null, params, "POST", new SampleUploadListener());

Параметры, используемые здесь:

  • localSnapshotUri который указывает на какое-то изображение в вас/sdcard/.. или где бы то ни было :) 
  • mainActivity, что является основным видом деятельности приложения
  • SampleUploadListener реализация интерфейса AsyncFacebookRunner.RequestListener

Приятного программирования!

2
plug-in

Просто выложил здесь простой способ загрузить фото:

Android facebook опубликовать фото

Код:

byte[] data = null;

Bitmap bi = BitmapFactory.decodeFile(photoToPost);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bi.compress(Bitmap.CompressFormat.JPEG, 100, baos);
data = baos.toByteArray();

Bundle params = new Bundle();
params.putString("method", "photos.upload");
params.putByteArray("picture", data);

AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook);
mAsyncRunner.request(null, params, "POST", new SampleUploadListener(), null);
2
trgraglia

Безусловно, самый простой и работающий пример публикации на стене пользователя без диалогового окна после входа в систему и использования нового SDK Facebook: http://www.integratingstuff.com/2010/10/14/integrating -футбол-в-Android-приложение/

Кстати, размещение изображений осуществляется с помощью:

parameters.putString("picture", "http://www.google.com/logos/mucha10-hp.jpg"); 
1
Yar