2015-08-11 3 views
-2

Я разрабатываю приложение, у которого есть возможность поделиться изображением через facebook. Я использую следующий код для публикации, и я использую sdk 3.0. Я не могу изменить версию sdk по некоторым причинам. Пожалуйста, помогите мне.Обмен на facebook (Blackberry)

public void postImage() 
    { 

    Bitmap img = BitmapFactory.decodeResource(getResources(), 
        R.drawable.ic_launcher); 

    Request uploadRequest = Request.newUploadPhotoRequest(
        Session.getActiveSession(), img, new Request.Callback() { 

         @Override 
         public void onCompleted(Response response) { 
          Toast.makeText(PhotoGallery.this, 
            "Photo uploaded successfully", 
            Toast.LENGTH_LONG).show(); 
         } 
        }); 
} 

Также я использую

<provider 
      android:name="com.facebook.NativeAppCallContentProvider" 
      android:authorities="com.facebook.app.NativeAppCallContentProvider1613067868978775" 
      android:exported="true" /> 

манифеста

Edit

ОК, я, наконец получил эту проблему, в перенесенных андроид приложений facebook SDK не поддерживает совместное использование фотографий. Но мы можем передавать простые сообщения на стене с помощью fb sdk.

+0

Если вы хотите есть способ разделить изображение через Facebook, не используя их SDK –

+0

, как это возможно? – userDroid

+0

Я добавил ответ ниже. Пожалуйста, проверьте его, и если он не работает для вас, я просто удалю его. –

ответ

1

Это то, что я делал:

private void initShareIntent() { 
    boolean found = false; 
    Intent share = new Intent(android.content.Intent.ACTION_SEND); 
    share.setType("image/jpeg"); 

    // gets the list of intents that can be loaded. 
    List<ResolveInfo> resInfo = getPackageManager().queryIntentActivities(share, 0); 
    if (!resInfo.isEmpty()) { 
     for (ResolveInfo info : resInfo) { 
      if (info.activityInfo.packageName.toLowerCase().contains("face") || 
        info.activityInfo.name.toLowerCase().contains"face")) { 
       share.putExtra(Intent.EXTRA_TEXT, "Elevator Express"); 
       share.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File(imagePath))); // Optional, just if you wanna share an image. 
       share.setPackage(info.activityInfo.packageName); 
       found = true; 
       break; 
      } 
     } 
     if (!found) { 
       Toast.makeText(getApplicationContext(), "Facebook does not exist", Toast.LENGTH_SHORT).show() 
      return; 
     } 
     startActivity(Intent.createChooser(share, "Select")); 
    } 
} 
+0

Извините, я использую плагин Blackberry для разработки этого приложения. Могу ли я предложить, как можно передать пакет в BlackBerry? – userDroid

+0

Я буду искать его –

+0

Да, я ничего не мог найти. Я знаю только родной андроид –