电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

詳解android在mob平臺實現qq登陸和分享

瀏覽:151日期:2022-06-04 16:05:38

個人感覺mob平臺功能還是比較強大的,很多功能都可以通過他們平臺來實現。

建議仔細觀看每一個步驟,如果一個步驟沒處理好,可能就會讓你的這個功能無法實現。相信我一定可以成功的。廢話少說,先看一下效果:

詳解android在mob平臺實現qq登陸和分享

1.在mob平臺配置ShareSDK環境1.如何在mob平臺創建應用

下面為我創建的應用,如圖所示,我們選擇接入的接口為ShareSDK

詳解android在mob平臺實現qq登陸和分享

2.獲取你的App Key和App Secret(建議用自己的)

獲取你先創建應用的App Key和App Secret,這里主要告訴你在哪里找App Key和App Secret,因為等下需要用到。

詳解android在mob平臺實現qq登陸和分享

3.點擊SDK下載

詳解android在mob平臺實現qq登陸和分享

4.選擇ShareSDK

詳解android在mob平臺實現qq登陸和分享

選擇配置我們主要選擇下方配置,然后點擊保存配置(下面我會說明為什么只選擇這些配置)

詳解android在mob平臺實現qq登陸和分享

5.點擊下載,就會彈出下載提示

詳解android在mob平臺實現qq登陸和分享

6.關于為什么只選擇這些配置?

可以從上圖中看出,無論是QQ還微博,微信等都需要獲取他們平臺的appId和appKey。如果你直接使用平臺的提供的appId和appKey是不能成功的。如果我想要實現這些功能,我們得先去那些平臺獲取他的appId和appKey。

詳解android在mob平臺實現qq登陸和分享

7.我創建的QQ開發者平臺應用

下面是我創建成功的應用,說實話QQ的這個服務確實挺慢的,一般審核需要幾天,可以是免費的原因吧。下面是創建應用的步驟。1.成為個人開發者。2.創建移動應用。

詳解android在mob平臺實現qq登陸和分享

2.把ShareSDK部署到android1.新建一個moudle或者project

這個就不細說,比較簡單。

2.配置你的build.gradle(Project)文件

如圖所示,添加如圖代碼:

詳解android在mob平臺實現qq登陸和分享

代碼如下:

classpath 'com.mob.sdk:MobSDK:2018.0319.1724'3.配置你的build.gradle(Module)文件

1.首先加入如圖代碼

詳解android在mob平臺實現qq登陸和分享

根據你的情況選擇:代碼如下,因為我的版本是android studio 4.2最新版,加入方法如下:

id ’com.mob.sdk’

如果是其他android studio 3點多的版本,添加方法代碼:

apply plugin:’com.mob.sdk’

2.其次加入下圖代碼

詳解android在mob平臺實現qq登陸和分享

加入代碼如下(建議使用自己申請的appId和appKey,如果你使用的是我QQ申請的appId和appKey話,你是成功不了,關于為什么成功不了,我下面將會說明):

MobSDK {fp true //嚴格模式 } MobSDK {appKey '31c48ca47c70e'appSecret '2d7adbfcd73363bbbe41aeff60e41e4f'ShareSDK { loopShare true devInfo {SinaWeibo { appKey '568898243' appSecret '38a4f8204cc784f81f9f0daaf31e02e3' callbackUri 'http://www.sharesdk.cn'}QQ { appId '101906011' appKey '676d885e518445fed4d7d2341ff2d56f'}TencentWeibo { appKey '801307650' appSecret 'ae36f4ee3946e1cbb98d6965b0b2ff5c' callbackUri 'http://www.sharesdk.cn'}QZone { appId '100371282' appKey 'aed9b0303e3ed1e27bae87c33761161d'} }} }

3. 解釋一下關于為什么成功不了

下面我創建的應用

詳解android在mob平臺實現qq登陸和分享

我們可以看一下在QQ平臺創建的應用包名和應用簽名如下

詳解android在mob平臺實現qq登陸和分享

然后我們在把他和我創建的android項目來對比一下:1.我的包名和他相同

詳解android在mob平臺實現qq登陸和分享

2.我們可以看一下我們的MD5是否相同第一步:如果查看你的項目的MD5找到圖中的gradle

詳解android在mob平臺實現qq登陸和分享

點擊圖中紅色圓圈處

詳解android在mob平臺實現qq登陸和分享

然后就可以查看MD5了

詳解android在mob平臺實現qq登陸和分享

第二步:將我的MD5的去掉’:號’,把大寫改為小寫,我們對比一下是相同的。

補充條件小彩蛋:如果你新建其他項目android項目的時候需要用到QQ的appId和appKey的話,你可以直接點擊下圖中的修改,修改你為你新項目的包名和MD5。

詳解android在mob平臺實現qq登陸和分享

即可直接進行修改

詳解android在mob平臺實現qq登陸和分享

4.配置你的AndroidManifest.xml文件

加入如圖回調和權限。

詳解android在mob平臺實現qq登陸和分享

詳解android在mob平臺實現qq登陸和分享

代碼如下:

權限:

<uses-permission android:name='android.permission.GET_TASKS' /> <uses-permission android:name='android.permission.INTERNET' /> <uses-permission android:name='android.permission.ACCESS_WIFI_STATE' /> <uses-permission android:name='android.permission.ACCESS_NETWORK_STATE' /> <uses-permission android:name='android.permission.CHANGE_WIFI_STATE' /> <uses-permission android:name='android.permission.WRITE_EXTERNAL_STORAGE' /> <uses-permission android:name='android.permission.READ_PHONE_STATE' /> <uses-permission android:name='android.permission.MANAGE_ACCOUNTS'/> <uses-permission android:name='android.permission.GET_ACCOUNTS'/> <!-- 藍牙分享所需的權限 --> <uses-permission android:name='android.permission.BLUETOOTH' /> <uses-permission android:name='android.permission.BLUETOOTH_ADMIN' />

回調代碼:

<activity android:name='com.mob.tools.MobUIShell' android:theme='@android:style/Theme.Translucent.NoTitleBar' android:configChanges='keyboardHidden|orientation|screenSize' android:screenOrientation='portrait' android:windowSoftInputMode='stateHidden|adjustResize' tools:ignore='LockedOrientationActivity'> <!-- QQ和QQ空間分享 QQ登錄的回調必須要配置的 --> <intent-filter> <data android:scheme='tencent101906011' /> <action android:name='android.intent.action.VIEW' /> <category android:name='android.intent.category.BROWSABLE' /> <category android:name='android.intent.category.DEFAULT' /> </intent-filter> <!-- 新浪微博客戶端分享回調必須配置 --> <intent-filter> <action android:name='com.sina.weibo.sdk.action.ACTION_SDK_REQ_ACTIVITY' /> <category android:name='android.intent.category.DEFAULT' /> </intent-filter> </activity>

注意事項:記得把如圖紅色圓圈處的101906011改為你的QQ平臺創建的應用申請的appId。

詳解android在mob平臺實現qq登陸和分享

5.配置activity.xml文件。

比較簡單,主要添加幾個控件用來接收數據

詳解android在mob平臺實現qq登陸和分享

代碼如下

<?xml version='1.0' encoding='utf-8'?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:app='http://schemas.android.com/apk/res-auto' xmlns:tools='http://schemas.android.com/tools' android:layout_width='match_parent' android:layout_height='match_parent' tools:context='.MainActivity'> <TextViewandroid: android:layout_width='wrap_content'android:layout_height='wrap_content'android:layout_marginTop='24dp'android:text='名字'android:textSize='20sp'app:layout_constraintEnd_toEndOf='@+id/imageView'app:layout_constraintStart_toStartOf='@+id/imageView'app:layout_constraintTop_toBottomOf='@+id/imageView'></TextView> <Buttonandroid: android:layout_width='wrap_content'android:layout_height='wrap_content'android:layout_marginTop='340dp'android:text='QQ登錄'app:layout_constraintEnd_toEndOf='parent'app:layout_constraintHorizontal_bias='0.476'app:layout_constraintStart_toStartOf='parent'app:layout_constraintTop_toTopOf='parent' /> <ImageViewandroid: android:layout_width='wrap_content'android:layout_height='wrap_content'android:layout_marginTop='56dp'android:src='http://www.hdgsjgj.cn/bcjs/@mipmap/ic_launcher_round'app:layout_constraintEnd_toEndOf='parent'app:layout_constraintStart_toStartOf='parent'app:layout_constraintTop_toTopOf='parent' /> <TextViewandroid: android:layout_width='wrap_content'android:layout_height='wrap_content'android:layout_marginTop='24dp'android:text='性別'app:layout_constraintEnd_toEndOf='@+id/text'app:layout_constraintStart_toStartOf='@+id/text'app:layout_constraintTop_toBottomOf='@+id/text' /> <Buttonandroid: android:layout_width='wrap_content'android:layout_height='wrap_content'android:layout_marginTop='50dp'android:text='QQ分享'app:layout_constraintEnd_toEndOf='parent'app:layout_constraintStart_toStartOf='parent'app:layout_constraintTop_toBottomOf='@+id/button' /></androidx.constraintlayout.widget.ConstraintLayout>6.配置Activity.java文件1.記得把MobSDK.init里面的AppKey和AppSecret改為你自己申請你的。2.qq登錄代碼

Platform qq = ShareSDK.getPlatform(QQ.NAME);qq.SSOSetting(false); // 設置false表示使用SSO授權方式qq.authorize();thirdLoginId = qq.getDb().getUserId();name = qq.getDb().getUserName();image = qq.getDb().getUserIcon();sex = qq.getDb().getUserGender();Toast.makeText(MainActivity.this,'name='+image,Toast.LENGTH_LONG).show();TextView textView=findViewById(R.id.text);textView.setText(name);Log.e('Toast','image='+thirdLoginId);ImageView imageView=findViewById(R.id.imageView);Glide.with(MainActivity.this) .load(image) .into(imageView);TextView textView1=findViewById(R.id.textView);if(sex!=null){ if(sex=='m'){ sex= '男'; }else { sex='女'; }}textView1.setText(sex);

記得導入Glide依賴,因為獲取的圖片地址為網絡圖片地址

implementation ’com.github.bumptech.glide:glide:4.11.0’3.qq分享代碼

OnekeyShare oks = new OnekeyShare();// title標題,微信、QQ和QQ空間等平臺使用 oks.setTitle('分享');// titleUrl QQ和QQ空間跳轉鏈接 oks.setTitleUrl('http://sharesdk.cn');// text是分享文本,所有平臺都需要這個字段 oks.setText('我是分享文本');// setImageUrl是網絡圖片的url oks.setImageUrl('https://hmls.hfbank.com.cn/hfapp-api/9.png');// url在微信、Facebook等平臺中使用 oks.setUrl('http://sharesdk.cn');// 啟動分享GUI oks.show(MobSDK.getContext());4.總體代碼

package com.example.mobsharetest;import androidx.appcompat.app.AppCompatActivity;import android.net.Uri;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.ImageView;import android.widget.TextView;import android.widget.Toast;import com.bumptech.glide.Glide;import com.mob.MobSDK;import org.w3c.dom.Text;import java.util.HashMap;import cn.sharesdk.framework.Platform;import cn.sharesdk.framework.PlatformActionListener;import cn.sharesdk.framework.ShareSDK;import cn.sharesdk.onekeyshare.OnekeyShare;import cn.sharesdk.sina.weibo.SinaWeibo;import cn.sharesdk.tencent.qq.QQ;public class MainActivity extends AppCompatActivity { private Button button; private Button button2; String thirdLoginId; String name; String image; String sex; @Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);MobSDK.init(this, '31c48ca47c70e','2d7adbfcd73363bbbe41aeff60e41e4f');MobSDK.submitPolicyGrantResult(true, null);button=findViewById(R.id.button);button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) {Platform qq = ShareSDK.getPlatform(QQ.NAME);qq.SSOSetting(false); // 設置false表示使用SSO授權方式qq.authorize();thirdLoginId = qq.getDb().getUserId();name = qq.getDb().getUserName();image = qq.getDb().getUserIcon();sex = qq.getDb().getUserGender();Toast.makeText(MainActivity.this,'name='+image,Toast.LENGTH_LONG).show();TextView textView=findViewById(R.id.text);textView.setText(name);Log.e('Toast','image='+thirdLoginId);ImageView imageView=findViewById(R.id.imageView);Glide.with(MainActivity.this).load(image).into(imageView);TextView textView1=findViewById(R.id.textView);if(sex!=null){ if(sex=='m'){sex= '男'; }else {sex='女'; }}textView1.setText(sex); }});button2=findViewById(R.id.button2);button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) {OnekeyShare oks = new OnekeyShare();// title標題,微信、QQ和QQ空間等平臺使用oks.setTitle('分享');// titleUrl QQ和QQ空間跳轉鏈接oks.setTitleUrl('http://sharesdk.cn');// text是分享文本,所有平臺都需要這個字段oks.setText('我是分享文本');// setImageUrl是網絡圖片的urloks.setImageUrl('https://hmls.hfbank.com.cn/hfapp-api/9.png');// url在微信、Facebook等平臺中使用oks.setUrl('http://sharesdk.cn');// 啟動分享GUIoks.show(MobSDK.getContext()); }}); }}

步驟有點復雜,因為這個功能確實比較難以實現,如果有什么問題的話,可以提出來,一不小心就寫14000多個字了。

詳解android在mob平臺實現qq登陸和分享

以上就是詳解android在mob平臺實現qq登陸和分享的詳細內容,更多關于android在mob平臺qq登陸和分享的資料請關注好吧啦網其它相關文章!

標簽: qq
相關文章:
主站蜘蛛池模板: 全自动固相萃取仪_高通量真空平行浓缩仪-勤业永为 | 传爱自考网_传爱自学考试网| LED灯杆屏_LED广告机_户外LED广告机_智慧灯杆_智慧路灯-太龙智显科技(深圳)有限公司 | 玻璃钢格栅盖板|玻璃钢盖板|玻璃钢格栅板|树篦子-长沙川皖玻璃钢制品有限公司 | 云南外加剂,云南速凝剂,云南外加剂代加工-普洱澜湄新材料科技有限公司 | 山东商品混凝土搅拌楼-环保型搅拌站-拌合站-分体仓-搅拌机厂家-天宇 | 胶水,胶粘剂,AB胶,环氧胶,UV胶水,高温胶,快干胶,密封胶,结构胶,电子胶,厌氧胶,高温胶水,电子胶水-东莞聚力-聚厉胶粘 | PCB厂|线路板厂|深圳线路板厂|软硬结合板厂|电路板生产厂家|线路板|深圳电路板厂家|铝基板厂家|深联电路-专业生产PCB研发制造 | 硅PU球场、篮球场地面施工「水性、环保、弹性」硅PU材料生产厂家-广东中星体育公司 | 广域铭岛Geega(际嘉)工业互联网平台-以数字科技引领行业跃迁 | AGV无人叉车_激光叉车AGV_仓储AGV小车_AGV无人搬运车-南昌IKV机器人有限公司[官网] | 防爆电机_ybx3系列电机_河南省南洋防爆电机有限公司 | 铝合金线槽_铝型材加工_空调挡水板厂家-江阴炜福金属制品有限公司 | 钢结构-钢结构厂房-钢结构工程[江苏海逵钢构厂] | 北京网站建设首页,做网站选【优站网】,专注北京网站建设,北京网站推广,天津网站建设,天津网站推广,小程序,手机APP的开发。 | 哈尔滨治「失眠/抑郁/焦虑症/精神心理」专科医院排行榜-京科脑康免费咨询 一对一诊疗 | 泰国试管婴儿_泰国第三代试管婴儿费用|成功率|医院—新生代海外医疗 | 无负压供水设备,消防稳压供水设备-淄博创辉供水设备有限公司 | 包装机_厂家_价格-山东包装机有限公司 | 卓能JOINTLEAN端子连接器厂家-专业提供PCB接线端子|轨道式端子|重载连接器|欧式连接器等电气连接产品和服务 | 化工ERP软件_化工新材料ERP系统_化工新材料MES软件_MES系统-广东顺景软件科技有限公司 | Eiafans.com_环评爱好者 环评网|环评论坛|环评报告公示网|竣工环保验收公示网|环保验收报告公示网|环保自主验收公示|环评公示网|环保公示网|注册环评工程师|环境影响评价|环评师|规划环评|环评报告|环评考试网|环评论坛 - Powered by Discuz! | 运动木地板厂家,篮球场木地板品牌,体育场馆木地板安装 - 欧氏运动地板 | 锻造液压机,粉末冶金,拉伸,坩埚成型液压机定制生产厂家-山东威力重工官方网站 | 多米诺-多米诺世界纪录团队-多米诺世界-多米诺团队培训-多米诺公关活动-多米诺创意广告-多米诺大型表演-多米诺专业赛事 | 酸度计_PH计_特斯拉计-西安云仪 纯水电导率测定仪-万用气体检测仪-低钠测定仪-米沃奇科技(北京)有限公司www.milwaukeeinst.cn | 昆明网络公司|云南网络公司|昆明网站建设公司|昆明网页设计|云南网站制作|新媒体运营公司|APP开发|小程序研发|尽在昆明奥远科技有限公司 | 小型气象站_车载气象站_便携气象站-山东风途物联网 | 耐酸碱泵-自吸耐酸碱泵型号「品牌厂家」立式耐酸碱泵价格-昆山国宝过滤机有限公司首页 | 3d可视化建模_三维展示_产品3d互动数字营销_三维动画制作_3D虚拟商城 【商迪3D】三维展示服务商 广东健伦体育发展有限公司-体育工程配套及销售运动器材的体育用品服务商 | 礼仪庆典公司,礼仪策划公司,庆典公司,演出公司,演艺公司,年会酒会,生日寿宴,动工仪式,开工仪式,奠基典礼,商务会议,竣工落成,乔迁揭牌,签约启动-东莞市开门红文化传媒有限公司 | 传动滚筒_厂家-淄博海恒机械制造厂| 东莞办公家具厂家直销-美鑫【免费3D效果图】全国办公桌/会议桌定制 | 滤芯,过滤器,滤油机,贺德克滤芯,精密滤芯_新乡市宇清流体净化技术有限公司 | 东莞精密模具加工,精密连接器模具零件,自動機零件,冶工具加工-益久精密 | 科普仪器菏泽市教育教学仪器总厂 | 「安徽双凯」自动售货机-无人售货机-成人用品-自动饮料食品零食售货机 | 细沙回收机-尾矿干排脱水筛设备-泥石分离机-建筑垃圾分拣机厂家-青州冠诚重工机械有限公司 | 葡萄酒灌装机-食用油灌装机-液体肥灌装设备厂家_青州惠联灌装机械 | 煤矿支护网片_矿用勾花菱形网_缝管式_管缝式锚杆-邯郸市永年区志涛工矿配件有限公司 | 恒温恒湿试验箱厂家-高低温试验箱维修价格_东莞环仪仪器_东莞环仪仪器 |