我试图从我的Android活动中调用Facebook授权,但由于某种原因,它从未调用onActivityResult.
我按照官方教程,我甚至创建了一个非常简单的应用程序,以便尝试此功能:
public class SimpleFacebookActivity extends Activity {
private EditText console;
private Facebook facebook = new Facebook(APP_ID);
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.console = (EditText)super.findViewById(R.id.console);
this.console.append("Started\n\n");
String text = Integer.toString(super.getIntent().getFlags() & Intent.FLAG_ACTIVITY_NO_HISTORY);
this.console.append(text);
this.facebook.authorize(this, new DialogListener() {
@Override
public void onComplete(Bundle values) {}
@Override
public void onFacebookError(FacebookError error) {}
@Override
public void onError(DialogError e) {}
@Override
public void onCancel() {}
});
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
this.console.append("onActivityResult, request code: …
Run Code Online (Sandbox Code Playgroud) java android facebook facebook-authentication facebook-android-sdk
我写了一个facebook应用程序,但身份验证无法正常工作.尽管谷歌搜索几个小时它没有解决.请编写正确验证用户身份的脚本,如果用户单击允许按钮,只需显示文本"欢迎",假设我已经写了所有基本的后缀.
require 'sdk/src/facebook.php'; $app_id = 'MY APP ID'; $canvas_page = "MY CANVAS URL"; // Create our Application instance (replace this with your appId and secret). $auth_url = "http://www.facebook.com/dialog/oauth?client_id=" . $app_id . "&redirect_uri=" . urlencode($canvas_page) ."&scope=email,read_stream&installed=1"; $facebook = new Facebook(array( 'appId' => $app_id , 'secret' => MY APP SECRET, 'cookie' => true, )); ///... your code to solve !
我们的许多用户目前使用facebook connect登录我们的网站www.mysite.com.我们在"subdomain.mysite.com"上有一个相关的应用程序.我们希望现有用户能够使用子域上的facebook连接进行登录.有没有办法做到这一点?
我发现这个相关的SO问题只有一个答案声称它是不可能的,我们必须创建一个用户必须单独授权的第二个应用程序.但是,我想100%确认在放弃之前无法从子域登录.有任何变通方法吗?
嘿,有人能指出我在Android的Facebook教程的正确方向吗?他们的开发者网站的教程并不是那么好.
这是我到目前为止所提出的:
public static final int FBResultCode = 100;
private static Session.StatusCallback sharedFBStatusCallback = new Session.StatusCallback()
{
@Override
public void call(Session session, SessionState state, Exception exception)
{
if(exception != null)
Log.e("fb error", exception.toString());
switch(state)
{
case OPENED:
//login successful
break;
case CLOSED:
case CLOSED_LOGIN_FAILED:
closeFBSession();
break;
default:
break;
}
}
};
public static void openFBSessionWithLoginUI(boolean loginUI)
{
Session session = Session.getActiveSession();
if (session != null &&
!session.isOpened() &&
!session.isClosed())
{
ArrayList<String> perms = new ArrayList<String>();
perms.add("user_likes");
perms.add("user_birthday");
perms.add("read_friendlists");
Session.OpenRequest openRequest …
Run Code Online (Sandbox Code Playgroud) 我正在尝试访问Facebook要求的数据.这是我的代码:
var auth_provider_facebook = new firebase.auth.FacebookAuthProvider();
/// BEGIN: configure the facebook authorization provider.
auth_provider_facebook.addScope('user_birthday');
auth_provider_facebook.addScope('user_about_me');
auth_provider_facebook.addScope('user_work_history');
auth_provider_facebook.addScope('user_education_history');
// auth_provider_facebook.addScope('user_birthday,user_about_me,user_work_history,user_education_history');
/// END: configure the facebook authorization provider.
Run Code Online (Sandbox Code Playgroud)
我已经尝试过单层衬里和多层衬里,但我仍然无法获取数据.此处的文档绝对没有关于从范围中检索数据的信息.这里提供的文档提到facebook
变量作为结果的一部分,但它总是如此undefined
.还有更多的文档在这里,带来了一个thirdPartyUserData
属性,它也始终undefined
.
我如何获取这些数据?
我已经制作了一个简单的应用程序,目的是使用我个人网站上的PHP脚本发布到Facebook页面.
经过多次试验和错误,似乎工作得很好.我可以通过我的网站登录我的应用程序,发布内容,然后返回我的网站.一切都很好.
一个奇怪的是,尽管一切正常,我在日志中收到此错误:
OAuthException:验证访问令牌时出错:会话无效,因为用户已注销.
我用Google搜索了错误,从我看到的情况来看,大多数人都遇到了超时或意外退出.解决方案范围包括如何维护登录会话.
但是,我认为我的情况与我见过的其他问题有所不同,因为尽管有错误,我似乎仍然登录.我可以根据需要多次发布到我的Page Wall.
每次我发布到墙上时似乎都不会生成错误.它似乎每三到四个中出现一个,但它不一致,我无法确定模式.
由于一切正常,我可以忽略错误信息,但在我看来这是不好的做法.我以后不想偷偷咬我.
任何帮助或建议将不胜感激.
驱动Facebook交互的代码与我的CMS集成在一起,因此它的某些部分会散布,和/或可能因为我必须自定义的部分而模糊不清.但是,我相信这个函数有PHP的互动.如果这足以帮助确定问题的根源,请告诉我:
private function executeFacebookPost()
{
// Facebook posts are limited to 420 characters. Links and pictures
// are separate.
$bodyOption = $this->mention->getOption(Action::$BODY);
if (count($bodyOption) == 0)
{
$fbPost = '';
}
else
{
$fbPost = $bodyOption[1];
}
$linkOption = $this->mention->getOption(Action::$LINK_TO);
if (count($linkOption) == 0)
{
$link = '';
}
else
{
$link = $linkOption[1];
}
// Use require_once() and not require() because you might be doing
// some facebook action …
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 facebook sdk 在我的 android 应用程序中包含 facebook 身份验证。但是 setReadPermissions() 和 handleFacebookAccessToken() 无法解析。我在文档之后添加了所有内容。
请建议我可能是什么错误谢谢。