Android
Users
如何在Android应用中集成Twitter登录功能
16 分
如何将twitter登录添加到您的android应用程序 介绍 本节解释如何使用twitter登录和 parse server核心功能 创建具有用户注册的应用程序,通过back4app。 它看起来像这样 在任何时候,您都可以在我们的 github仓库 中访问使用本教程构建的完整android项目。 先决条件 要完成本教程,我们需要: android studio 在 back4app 上创建的应用程序。 注意: 请遵循 新 parse 应用教程 以了解如何在 back4app 上创建 parse 应用。 一个连接到 back4app 的安卓应用。 注意: 请遵循 安装 parse sdk 教程 以创建一个连接到 back4app 的 android studio 项目。 一台运行 android 4 1(果冻豆)或更高版本的设备(或 虚拟设备 )。 1 twitter 设置 要开始使用 twitter 功能,您需要: 前往 twitter 应用管理网站 , 使用 twitter 账户登录并点击 创建新应用 创建新应用 填写 应用详情 应用详情 当被要求指定 回调 url 回调 url , 请插入 twittersdk // twittersdk // 这是 强制性的 以便通过 twitter 启用身份验证 3\ 点击 开发者协议 开发者协议 然后点击 创建你的 twitter 应用 创建你的 twitter 应用 4\ 打开你的 android studio 项目,找到你的 build gradle (module app) build gradle (module app) ,在 dependencies{} dependencies{} 部分添加以下代码以安装 parse twitter utils sdk for android。 1 // 别忘了用最新版本的 parse twitter utils sdk for android 替换下面的行 2 implementation 'com github parse community\ parsetwitterutils android\ latest version here' 记得将 parse facebook utils sdk for android 的版本更新到最新版本。你可以在 jitpack 网站 ,按照以下步骤找到最新版本 在 jitpack 网站上粘贴 parse community/parsetwitterutils android parse community/parsetwitterutils android 到 git repo url git repo url 框中。 完成后,点击 查找 查找 按钮。然后你应该能看到可用的 parse twitter utils sdk for android 版本,如下图所示。 2 将您的 twitter 应用与 back4app 连接 在您的 android studio 项目中,在名为 app app 的 java 文件中,该文件扩展了您创建的 application 以初始化 parse sdk,在其 oncreate oncreate 方法中,在 parse initialize() parse initialize() 调用之后,使用以下代码来初始化 parse twitter utils sdk。 1 parsetwitterutils initialize(getstring(r string twitter consumer key), getstring(r string twitter consumer secret)); 如果您没有一个 app java app java 文件,如本步骤所述,请访问 https //www back4app com/docs/android/parse android sdk 文档,并确保您已按照所有步骤正确安装 parse sdk。如果您没有正确安装 parse sdk,您的 facebook 登录将无法与 parse 一起使用。 2\ 转到 app app > res res > values values > strings xml strings xml 文件。 在 strings xml strings xml 文件中添加以下代码: \<! 根据需要更改以下字符串 > \<string name="twitter consumer key">粘贴您的 twitter 消费者密钥\</string>\<string name="twitter consumer secret">粘贴您的 twitter 消费者密钥\</string> 2\ 保持 string xml string xml 文件打开,然后访问 back4app 网站,登录并点击 我的应用 我的应用 。找到您的应用,然后点击 服务器设置 服务器设置 。 找到 “twitter 登录” 块并点击 设置 设置 。 “twitter 登录” 块看起来是这样的 2\ 保持你访问的 back4app twitter 登录 页面打开,然后去 twitter 应用管理网站 找到你的应用并点击它的名称。 3\ 点击密钥和访问令牌,复制消费者密钥(api 密钥)和消费者密钥(api 秘密),并将其粘贴到 back4app twitter 登录页面,填写相应的字段。完成后只需点击保存。消费者密钥(api 密钥)和消费者密钥(api 秘密)看起来是这样的 4\ 另外,复制 消费者密钥 (api 密钥) 消费者密钥 (api 密钥) 和 消费者秘密 (api 秘密) 消费者秘密 (api 秘密) 并将其粘贴到你的 strings xml strings xml 文件中,位于你的 android studio 项目中。 4 登录 导入到你的 loginactivity loginactivity 1 import android app alertdialog ; 2 import android app progressdialog ; 3 import android content dialoginterface ; 4 import android content intent ; 5 import android support v7 app appcompatactivity ; 6 import android os bundle ; 7 import android view\ view ; 8 import android util log ; 9 import android widget button ; 10 import android widget toast ; 11 12 import com parse logincallback ; 13 import com parse parseexception ; 14 import com parse twitter parsetwitterutils ; 15 import com parse parseuser ; 16 import com parse savecallback ; 2\ 要实现twitter登录,只需使用以下代码: 1 parsetwitterutils login(loginactivity this, new logincallback() { 2 3 @override 4 public void done(final parseuser user, parseexception err) { 5 if (err != null) { 6 dlg dismiss(); 7 parseuser logout(); 8 log e("err", "err", err); 9 } 10 if (user == null) { 11 dlg dismiss(); 12 parseuser logout(); 13 toast maketext(loginactivity this, "the user cancelled the twitter login ", toast length long) show(); 14 log d("myapp", "uh oh the user cancelled the twitter login "); 15 } else if (user isnew()) { 16 dlg dismiss(); 17 toast maketext(loginactivity this, "user signed up and logged in through twitter ", toast length long) show(); 18 log d("myapp", "user signed up and logged in through twitter!"); 19 user setusername(parsetwitterutils gettwitter() getscreenname()); 20 user saveinbackground(new savecallback() { 21 @override 22 public void done(parseexception e) { 23 if (null == e) { 24 alertdisplayer("first tome login!", "welcome!"); 25 } else { 26 parseuser logout(); 27 toast maketext(loginactivity this, "it was not possible to save your username ", toast length long) show(); 28 } 29 } 30 }); 31 } else { 32 dlg dismiss(); 33 toast maketext(loginactivity this, "user logged in through twitter ", toast length long) show(); 34 log d("myapp", "user logged in through twitter!"); 35 alertdisplayer("oh, you!","welcome back!"); 36 } 37 } 38 }); 在示例项目中,这段代码放置在一个 通过推特登录 通过推特登录 按钮回调中。 3\ 添加一些方法来显示警告对话框,使过程看起来更专业是很有趣的。下面的方法实现了这一点: 1 private void alertdisplayer(string title,string message){ 2 alertdialog builder builder = new alertdialog builder(loginactivity this) 3 settitle(title) 4 setmessage(message) 5 setpositivebutton("ok", new dialoginterface onclicklistener() { 6 @override 7 public void onclick(dialoginterface dialog, int which) { 8 dialog cancel(); 9 // don't forget to change the line below with the names of your activities 10 intent intent = new intent(loginactivity this, logoutactivity class); 11 intent addflags(intent flag activity clear task | intent flag activity new task); 12 startactivity(intent); 13 } 14 }); 15 alertdialog ok = builder create(); 16 ok show(); 17 } 5 登出 导入到你的 loginactivity loginactivity 1 import android app alertdialog ; 2 import android app progressdialog ; 3 import android content dialoginterface ; 4 import android content intent ; 5 import android support v7 app appcompatactivity ; 6 import android os bundle ; 7 import android view\ view ; 8 import android widget button ; 9 10 import com parse parseuser ; 2\ 要实现twitter注销,只需使用以下代码 1 parseuser logout (); 2 alertdisplayer ( "所以,你要走了 " , "好的 再见了" ); 在示例项目中,这段代码放置在一个 通过twitter注销 通过twitter注销 按钮回调中。 该方法 alertdisplayer alertdisplayer 与您在 loginactivity loginactivity 中添加的相同,只需记得更改 intent intent 参数。在您的android studio项目的strings xml文件中。 完成了! 在这个阶段,您可以使用parse server核心功能通过back4app登录、注册和注销您的应用程序!