php - 从 Facebook 登录中提取名称和 ID 字符串?

标签 php android mysql facebook

我有一个在 Facebook 上登录的基本应用程序,onSuccess 会向用户显示一张带有用户 GPS 位置的 map 。

我需要将用户名和 ID 上传到数据库,最好是 mysql 和 php。

我不知道如何使用 Facebook API 来解决这个问题,我不知道该怎么做。我的 mainActivity 是这样的;

import android.app.ActionBar;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;

import com.facebook.CallbackManager;
import com.facebook.FacebookCallback;
import com.facebook.FacebookException;
import com.facebook.FacebookSdk;
import com.facebook.login.LoginManager;
import com.facebook.login.LoginResult;
import com.facebook.login.widget.LoginButton;

public class MainActivity extends Activity {

    private CallbackManager callbackManager;

    private TextView info;
    private LoginButton loginButton;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        FacebookSdk.sdkInitialize(getApplicationContext());
        callbackManager = CallbackManager.Factory.create();
        setContentView(R.layout.activity_main);
        setContentView(R.layout.activity_main);
        info = (TextView)findViewById(R.id.info);
        loginButton = (LoginButton)findViewById(R.id.login_button);

        loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
            @Override
            public void onSuccess(LoginResult loginResult) {
                startActivity(new Intent(MainActivity.this, MapActivity.class));

            }

            @Override
            public void onCancel() {
                info.setText("Login attempt cancelled.");
            }

            @Override
            public void onError(FacebookException e) {
                info.setText("Login attempt failed.");
            }

        });
        View decorView = getWindow().getDecorView();
// Hide the status bar.
        int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;
        decorView.setSystemUiVisibility(uiOptions);
// Remember that you should never show the action bar if the
// status bar is hidden, so hide that too if necessary.
        ActionBar actionBar = getActionBar();
        actionBar.hide();

    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        callbackManager.onActivityResult(requestCode, resultCode, data);
    }
}

MySQL 部分很简单,我认为我可以管理 PHP,但是如何从 Facebook 获取名称字符串等并将其解析为 PHP?

最佳答案

GraphRequest request = GraphRequest.newMeRequest(
                    loginResult.getAccessToken(), (json, response) -> {
                        if (response.getError() == null) {
                            //get the info here.
                            String name = json.getString("name");
                            String id = json.getString("id");
                        }
                    });

关于php - 从 Facebook 登录中提取名称和 ID 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32632601/

相关文章:

android - 如何调用 Android 联系人列表并从其详细信息屏幕中选择一个电话号码?

php - Docker:MySQL容器绑定(bind)主机mysqld套接字

android - 捕捉文件下载?

php - WooCommerce - 更改商店页面布局但保留 archive-product.php

Android github 推送和 pull

mysql - 如何更快下单?

mysql - 从数据库中检索两行的记录,这些记录不提供所有用户的聊天记录,但仅包含选定的用户

html - WordPress:将可视化编辑器中的转义代码批量转换为 HTML?

javascript - 即使我在 POST 上收到 200 响应,$_POST 数据还是空的?

php - 日期函数显示两个日期之间的所有日期