Предупреждение: для запроса без сеанса требуется токен, но отсутствует идентификатор приложения или клиентский токен
Использование FB SDK для Android иногда вызывает ошибку в Logcat.
Кто-нибудь знает причину? Мое приложение работает и одобрено (не в игре Google). Я также использую хэш-вещь и имею свою основную деятельность и имя пакета, перечисленные на странице приложения FB.
Ответы
Ответ 1
Я думаю, что учетная запись facebook, которую вы используете для совместного использования, не играет роли в вашем приложении facebook. Перейдите в консоль facebook для разработчиков приложений и проверьте роли. Или установите статус и обзор в положение ON, но я думаю, что это не хорошее решение, если ваше приложение недоступно в Google Play или App Store.
Ответ 2
Вы должны проверить свой хэш-ключ в настройках https://developers.facebook.com
Попробуйте код ниже, чтобы проверить и добавить правильный hashkey.
Это работает для меня!
private void getSHAFingerPrint(){
PackageInfo info;
try {
info = getPackageManager().getPackageInfo(
"your.package", PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md;
md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
String something = new String(Base64.encode(md.digest(), 0));
Log.e("Hash key", something);
System.out.println("Hash key" + something);
}
} catch (NameNotFoundException e1) {
Log.e("name not found", e1.toString());
} catch (NoSuchAlgorithmException e) {
Log.e("no such an algorithm", e.toString());
} catch (Exception e) {
Log.e("exception", e.toString());
}
}
Ответ 3
fooobar.com/questions/170991/..., это решение, которое работает для некоторого peaple (и дублирующего вопроса), и это сработало для меня:
Это сработало для меня:
<string name="app_id">999999999999999</string>
<meta-data
android:name="com.facebook.sdk.ApplicationId"
android:value="@string/app_id" />
Ответ 4
У вас есть этот журнал ошибок, потому что срок действия вашего сеанса истек, и вам нужно снова войти в систему, он автоматически войдет в систему с учетной записью, авторизованной пользователем, и не будет предлагать пользователям принимать разрешения на публикацию приложения.
Ответ 5
Вы получаете эту ошибку, потому что вы не можете объявить свой идентификатор приложения в файле manifest.xml или неправильно зарегистрировали свое приложение на "developers.facebook.com"
Ответ 6
Я знаю, что это вопрос, но я просто решил свою проблему, перейдя в https://developers.facebook.com/apps/[yourappid]/settings/ и отключив опцию Deep Linking
.
Надеюсь, это поможет кому-то:).