Android中使用ShareSDK实现分享
1,在http://www.mob.com官网上去创建一个后台应用(如果没有账号的同学要去先注册一下),主要后去的是你新创建的应用的appKey值
2,这里我们分享新浪微博为例,在新浪微博的sdk中创建一个新的应用,主要是获取这个应用的appKey和appSecret值
3,下载SDk的客户端,解压出来,在ShareSDK for Android文件夹中运行QuickIntegrater.jar这个文件(前提是你的电脑已近安装了jdk,并配置了环境变量,使用javaw.exe来运行),创建出我们的集成引用(这里我们只选择新浪微博),并将其导入到我们的工程中
4,配置AndroidManifest.xml
A:添加权限
<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" />
B:添加Activity信息
<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" > <intent-filter> <data android:scheme="tencent100371282" /> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.BROWSABLE" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity>
5,在主的activity中添加基本的分享信息
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //2,初始化ShareSDK ShareSDK.initSDK(getApplicationContext()); setContentView(R.layout.activity_main); btn_main_share = (Button) findViewById(R.id.btn_main_share); //3,添加权限及我们要用的Activity btn_main_share.setOnClickListener(new OnClickListener() { //1,设置分享的基本信息 public void onClick(View v) { //创建一键分享对象 OnekeyShare onekeyShare = new OnekeyShare(); //设置标题 onekeyShare.setTitle("慕课网分享"); //设置信息 onekeyShare.setText("我用技术为慕课网代言"); //设置图标 onekeyShare.setImageUrl("http://img.taopic.com/uploads/allimg/130501/240451-13050106450911.jpg"); //显示分享列表 onekeyShare.show(MainActivity.this); } }); }
6,在工程的asset文件中的ShareSDK.xml文件替换mob后台申请的Appkey与各个平台申请的key
现在我们就可以实现我们的分享功能了,注意:如果使用shareSDK到新浪微博出现"21322:redirect_uri_mismathch(C400)",则表明你的新浪授权有问题,需要检查我们的ShareSDK.xml文件中的两个属性,且这两个属性是固定写法,一定要改过来
RedirectUrl="http://www.sharesdk.cn" ShareByAppClient="true"