Совместное использование фотографии на временной шкале Facebook вместо изображения профиля: Android - PullRequest
0 голосов
/ 15 октября 2018

Я успешно обмениваюсь фотографиями на временной шкале Facebook через мое приложение для Android с последних нескольких месяцев.Вчера я узнал об этом, когда пользователь делится фотографией с помощью приложения, он делает эту фотографию фотографией профиля, а не публикует ее на временной шкале.Я просмотрел, отладил код и обнаружил, что resolInfo.activityInfo.packageName возвращает пакет com.facebook.timeline.stagingground.ProfilePictureShareActivity.Вот почему он делится фотографией в качестве аватарки.Вот мой код:

try {
     resolveInfo = ActivityFinder.getActivityInfo(WatermarkActivity.this, Intent.ACTION_SEND, "image/*", "facebook");
     Intent photoIntent = new Intent(Intent.ACTION_SEND);
     photoIntent.setClassName(resolveInfo.activityInfo.packageName, resolveInfo.activityInfo.name);
     photoIntent.setType("image/*");
     photoIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///" + fsTMPPhotoFileName));
     startActivity(photoIntent);
   } catch (Exception ex) {
     ex.printStackTrace();
  }

Кто-нибудь еще сталкивался с подобной проблемой?Любая помощь для решения этой проблемы будет высоко оценена?Спасибо

1 Ответ

0 голосов
/ 06 февраля 2019

Я выяснил проблему давным-давно, но не опубликовал ответ.Теперь выкладываю ответ, на случай, если у кого-то возникнет такая проблема.Единственная проблема заключалась в том, чтобы вместо setClassName (...) передавать packageName и класс с photoIntent, просто setPackage (...) и передавать packageName.Вот окончательный код.

try {

   Intent photoIntent = new Intent(Intent.ACTION_SEND);
   photoIntent.setPackage(riInfo.activityInfo.packageName);
   photoIntent.setType("image/*");
   photoIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///" + fsTMPPhotoFileName));
   startActivity(photoIntent);

} 
catch (Exception e) {

     ex.printStackTrace(); 
}

Вот и все.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...