Android 根据请求代码区分两种活动结果,如何为“编写请求代码”;loginWIthFB";在代码中 public类MainActivity扩展了AppCompatActivity 实现LoginSocial.OnFragmentInteractionListener,更新.OnFragmentInteractionListener,查看.OnClickListener,GoogleAppClient.OnConnectionFailedListener{ 私人签到按钮标志; 私人GoogleapClient GoogleapClient; 静态最终整数设置_铃声=0; 静态最终int选择联系人请求=1; 专用静态最终输入RC\U符号\U IN=9001; 私有字符串标签; 专用工具栏; 私人摊位摊位; 私人视页机视页机; @凌驾 创建时受保护的void(Bundle savedInstanceState){ super.onCreate(savedInstanceState); sdkinInitialize(getApplicationContext()); setContentView(R.layout.activity_main); 初始化控件(); loginWithFB(); toolbar=(toolbar)findviewbyd(R.id.toolbar); 设置支持操作栏(工具栏); getSupportActionBar().setDisplayHomeAsUpEnabled(true); viewPager=(viewPager)findViewById(R.id.viewPager); 设置viewPager(viewPager); tabLayout=(tabLayout)findViewById(R.id.tabs); tabLayout.setupWithViewPager(viewPager); sign=(SignInButton)findViewById(R.id.sign_in_按钮); sign.setOnClickListener(此); } @凌驾 公共void onClick(视图){ 开关(view.getId()) { 案例R.id.登录按钮: 符号(); 打破 } } 私人无效标志(){ Intent signient=Auth.GoogleSignInApi.getsignient(谷歌客户端); startActivityForResult(签名、注册); } @凌驾 public void onconnection失败(@NonNull ConnectionResult ConnectionResult){ } 私有无效HandlerResult(谷歌签名结果){ Log.d(标记为“handleSignInResult:+result.issucess()); if(result.issucess()){ //成功登录,显示已验证的UI。 GoogleSignInAccount acct=result.getSignInAccount(); 更新(真); }否则{ //已注销,显示未经验证的用户界面。 更新(假); } } 私有void updateUI(布尔b){ } 专用无效设置ViewPager(ViewPager ViewPager){ ViewPagerAdapter适配器=新的ViewPagerAdapter(getSupportFragmentManager()); addFragment(新LoginSocial(),“一”); addFragment(新更新(),“两个”); viewPager.setAdapter(适配器); } @凌驾 公共void onFragmentInteraction(Uri){ } 类ViewPagerAdapter扩展了FragmentPagerAdapter{ 私有最终列表MFFragmentList=new ArrayList(); 私有最终列表MFFragmentTitleList=new ArrayList(); 公共视图页面编辑器(碎片管理器){ 高级经理; } @凌驾 公共片段getItem(int位置){ 返回MFFragmentList.get(位置); } @凌驾 public int getCount(){ 返回MFFragmentList.size(); } public void addFragment(片段片段,字符串标题){ 添加(片段); MFFragmentTitleList.add(标题); } @凌驾 公共字符序列getPageTitle(int位置){ 返回MFFragmentTitleList.get(位置); } } TextView txtStatus; 登录按钮fb_登录; CallbackManager CallbackManager; 私有void initializeControl(){ callbackManager=callbackManager.Factory.create(); txtStatus=(TextView)findViewById(R.id.txtStatus); fb_login=(LoginButton)findviewbyd(R.id.fb_login); } 私有void loginWithFB(){ LoginManager.getInstance().registerCallback(callbackManager,new FacebookCallback()){ @凌驾 成功时公共无效(LoginResult LoginResult){ setText(“登录成功”); } @凌驾 公开作废{ setText(“登录已取消”); } @凌驾 public void onError(facebook异常错误){ setText(“登录错误:+Error.getMessage()); } }); } 受保护的void onActivityResult(int请求代码、int结果代码、意图数据){ super.onActivityResult(请求代码、结果代码、数据); callbackManager.onActivityResult(请求代码、结果代码、数据); if(requestCode==RC\u登录){ GoogleSignInResult结果=Auth.GoogleSignInApi.getSignInResultFromIntent(数据); handleResult(结果); }
您可以使用Android 根据请求代码区分两种活动结果,如何为“编写请求代码”;loginWIthFB";在代码中 public类MainActivity扩展了AppCompatActivity 实现LoginSocial.OnFragmentInteractionListener,更新.OnFragmentInteractionListener,查看.OnClickListener,GoogleAppClient.OnConnectionFailedListener{ 私人签到按钮标志; 私人GoogleapClient GoogleapClient; 静态最终整数设置_铃声=0; 静态最终int选择联系人请求=1; 专用静态最终输入RC\U符号\U IN=9001; 私有字符串标签; 专用工具栏; 私人摊位摊位; 私人视页机视页机; @凌驾 创建时受保护的void(Bundle savedInstanceState){ super.onCreate(savedInstanceState); sdkinInitialize(getApplicationContext()); setContentView(R.layout.activity_main); 初始化控件(); loginWithFB(); toolbar=(toolbar)findviewbyd(R.id.toolbar); 设置支持操作栏(工具栏); getSupportActionBar().setDisplayHomeAsUpEnabled(true); viewPager=(viewPager)findViewById(R.id.viewPager); 设置viewPager(viewPager); tabLayout=(tabLayout)findViewById(R.id.tabs); tabLayout.setupWithViewPager(viewPager); sign=(SignInButton)findViewById(R.id.sign_in_按钮); sign.setOnClickListener(此); } @凌驾 公共void onClick(视图){ 开关(view.getId()) { 案例R.id.登录按钮: 符号(); 打破 } } 私人无效标志(){ Intent signient=Auth.GoogleSignInApi.getsignient(谷歌客户端); startActivityForResult(签名、注册); } @凌驾 public void onconnection失败(@NonNull ConnectionResult ConnectionResult){ } 私有无效HandlerResult(谷歌签名结果){ Log.d(标记为“handleSignInResult:+result.issucess()); if(result.issucess()){ //成功登录,显示已验证的UI。 GoogleSignInAccount acct=result.getSignInAccount(); 更新(真); }否则{ //已注销,显示未经验证的用户界面。 更新(假); } } 私有void updateUI(布尔b){ } 专用无效设置ViewPager(ViewPager ViewPager){ ViewPagerAdapter适配器=新的ViewPagerAdapter(getSupportFragmentManager()); addFragment(新LoginSocial(),“一”); addFragment(新更新(),“两个”); viewPager.setAdapter(适配器); } @凌驾 公共void onFragmentInteraction(Uri){ } 类ViewPagerAdapter扩展了FragmentPagerAdapter{ 私有最终列表MFFragmentList=new ArrayList(); 私有最终列表MFFragmentTitleList=new ArrayList(); 公共视图页面编辑器(碎片管理器){ 高级经理; } @凌驾 公共片段getItem(int位置){ 返回MFFragmentList.get(位置); } @凌驾 public int getCount(){ 返回MFFragmentList.size(); } public void addFragment(片段片段,字符串标题){ 添加(片段); MFFragmentTitleList.add(标题); } @凌驾 公共字符序列getPageTitle(int位置){ 返回MFFragmentTitleList.get(位置); } } TextView txtStatus; 登录按钮fb_登录; CallbackManager CallbackManager; 私有void initializeControl(){ callbackManager=callbackManager.Factory.create(); txtStatus=(TextView)findViewById(R.id.txtStatus); fb_login=(LoginButton)findviewbyd(R.id.fb_login); } 私有void loginWithFB(){ LoginManager.getInstance().registerCallback(callbackManager,new FacebookCallback()){ @凌驾 成功时公共无效(LoginResult LoginResult){ setText(“登录成功”); } @凌驾 公开作废{ setText(“登录已取消”); } @凌驾 public void onError(facebook异常错误){ setText(“登录错误:+Error.getMessage()); } }); } 受保护的void onActivityResult(int请求代码、int结果代码、意图数据){ super.onActivityResult(请求代码、结果代码、数据); callbackManager.onActivityResult(请求代码、结果代码、数据); if(requestCode==RC\u登录){ GoogleSignInResult结果=Auth.GoogleSignInApi.getSignInResultFromIntent(数据); handleResult(结果); },android,onactivityresult,Android,Onactivityresult,您可以使用FacebookSdk.isFacebookRequestCode()检查请求代码是否来自Facebook public class MainActivity extends AppCompatActivity implements LoginSocial.OnFragmentInteractionListener, Updates.OnFragmentInteractionListener,View.OnClickListener,GoogleApiClient.O
FacebookSdk.isFacebookRequestCode()
检查请求代码是否来自Facebook
public class MainActivity extends AppCompatActivity
implements LoginSocial.OnFragmentInteractionListener, Updates.OnFragmentInteractionListener,View.OnClickListener,GoogleApiClient.OnConnectionFailedListener {
private SignInButton sign;
private GoogleApiClient googleApiClient;
static final int Set_Ringtone = 0;
static final int PICK_CONTACT_REQUEST = 1;
private static final int RC_SIGN_IN = 9001;
private String TAG;
private Toolbar toolbar;
private TabLayout tabLayout;
private ViewPager viewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(getApplicationContext());
setContentView(R.layout.activity_main);
initializeControls();
loginWithFB();
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
viewPager = (ViewPager) findViewById(R.id.viewpager);
setupViewPager(viewPager);
tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
sign = (SignInButton)findViewById(R.id.sign_in_button);
sign.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId())
{
case R.id.sign_in_button:
sign();
break;
}
}
private void sign() {
Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(googleApiClient);
startActivityForResult(signInIntent, RC_SIGN_IN);
}
@Override
public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
}
private void handleResult(GoogleSignInResult result) {
Log.d(TAG, "handleSignInResult:" + result.isSuccess());
if (result.isSuccess()) {
// Signed in successfully, show authenticated UI.
GoogleSignInAccount acct = result.getSignInAccount();
updateUI(true);
} else {
// Signed out, show unauthenticated UI.
updateUI(false);
}
}
private void updateUI(boolean b) {
}
private void setupViewPager(ViewPager viewPager) {
ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
adapter.addFragment(new LoginSocial(), "ONE");
adapter.addFragment(new Updates(), "TWO");
viewPager.setAdapter(adapter);
}
@Override
public void onFragmentInteraction(Uri uri) {
}
class ViewPagerAdapter extends FragmentPagerAdapter {
private final List<Fragment> mFragmentList = new ArrayList<>();
private final List<String> mFragmentTitleList = new ArrayList<>();
public ViewPagerAdapter(FragmentManager manager) {
super(manager);
}
@Override
public Fragment getItem(int position) {
return mFragmentList.get(position);
}
@Override
public int getCount() {
return mFragmentList.size();
}
public void addFragment(Fragment fragment, String title) {
mFragmentList.add(fragment);
mFragmentTitleList.add(title);
}
@Override
public CharSequence getPageTitle(int position) {
return mFragmentTitleList.get(position);
}
}
TextView txtStatus;
LoginButton fb_login;
CallbackManager callbackManager;
private void initializeControls(){
callbackManager = CallbackManager.Factory.create();
txtStatus = (TextView) findViewById(R.id.txtStatus);
fb_login = (LoginButton) findViewById(R.id.fb_login);
}
private void loginWithFB(){
LoginManager.getInstance().registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
txtStatus.setText("Login Success");
}
@Override
public void onCancel() {
txtStatus.setText("Login Cancelled.");
}
@Override
public void onError(FacebookException error) {
txtStatus.setText("Login Error:"+error.getMessage());
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
callbackManager.onActivityResult(requestCode, resultCode, data);
if (requestCode == RC_SIGN_IN) {
GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
handleResult(result);
}
您好,我无法在Emulator中打开我的应用程序。我觉得Tablayout有问题。我在没有Tablayout的情况下尝试了代码,但它成功了。但是在Tablayout中它没有打开。请对此提供帮助。提前感谢。我建议您发布一个新问题,因为这是一个与原始问题不同的问题。请确保您将错误日志包括在ma中让问题更容易识别。我会尽力帮助。谢谢。我已经在这个链接上发布了我的问题。非常感谢
protected void onActivityResult(int requestCode, int resultCode, Intent data)
super.onActivityResult(requestCode, resultCode, data);
if (FacebookSdk.isFacebookRequestCode(requestCode) {
// Facebook
callbackManager.onActivityResult(requestCode, resultCode, data);
} else if (requestCode == RC_SIGN_IN) {
// Google
GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
handleResult(result);
}
}