标签:
新版本ShareSDK的分享和短信验证,按官网的文档,都需要添加一个<Activity></Activity>标签,而分享和短息验证的这个标签内容都一样。会冲突。
解决办法:分享用旧版本,短信验证用新版本。后面会有解决办法。
导入工程见初识ShareSDK——嵌入和登陆
<span style="font-size:24px;">OnekeyShare oks = new OnekeyShare(); //所有SSO都是针对新浪微博d oks.disableSSOWhenAuthorize(); oks.setSilent(true);</span>如果没有指定分享平台,则默认所有平台都会跳出。
oks.setPlatform(platformName);
一些需要注意的,注释已经很详细了。
<span style="white-space:pre"> </span><span style="font-size:24px;">//分享时Notification的图标和文字2.5.9以后的版本不调用此方法
<span style="white-space:pre"> </span>//oks.setNotification(R.drawable.ic_launcher, getString(R.string.app_name));
<span style="white-space:pre"> </span>// title标题,印象笔记、邮箱、信息、微信、人人网和QQ空间使用
oks.setTitle(getString(R.string.share));
<span style="white-space:pre"> </span>// titleUrl是标题的网络链接,仅在人人网和QQ空间使用
oks.setTitleUrl("http://sharesdk.cn");
<span style="white-space:pre"> </span>// text是分享文本,所有平台都需要这个字段
<span style="white-space:pre"> </span> //有字数限制
oks.setText("我是分享文本");
<span style="white-space:pre"> </span> // imagePath是图片的本地路径,Linked-In以外的平台都支持此参数(如果本地没有,则后面的语句不会执行)
<span style="white-space:pre"> </span>//oks.setImagePath("/sdcard/test.jpg");//确保SDcard下面存在此张图片
<span style="white-space:pre"> </span>//oks.setImageUrl("=");//网络路径 QQ空间有时候分享不成功(权限问题)
<span style="white-space:pre"> </span>// url仅在微信(包括好友和朋友圈)中使用
oks.setUrl("http://sharesdk.cn");
// comment是我对这条分享的评论,仅在人人网和QQ空间使用
oks.setComment("我是测试评论文本");
// site是分享此内容的网站名称,仅在QQ空间使用
oks.setSite(getString(R.string.app_name));
// siteUrl是分享此内容的网站地址,仅在QQ空间使用
oks.setSiteUrl("http://sharesdk.cn");
//设置经纬度(可根据定位获取)
//oks.setLatitude(latitude);
//oks.setLongitude(longitude);
//启动分享GUI(图形用户界面)
oks.show(this);</span>官网下载SDK
将SMS文件夹下的SMSSDK文件拷贝到工程里,作为library导入。
添加权限:
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> SMSSDK.initSDK(this, APP_KEY, APP_SECRET);
RegisterPage page = new RegisterPage();
page.setRegisterCallback(new EventHandler(){
@Override
public void afterEvent(int event, int result, Object data) {
if(result == SMSSDK.RESULT_COMPLETE){
HashMap<String,Object> phoneMap = (HashMap<String, Object>) data;
String country = (String) phoneMap.get("country");
String phone = (String) phoneMap.get("phone");
// 提交用户信息,这个方法是获取了手机后,你想采取的操作。
//registerUser(country, phone);
System.out.println(country+phone);
}
}
});
page.show(this); <activity
android:name="com.mob.tools.MobUIShell"
android:configChanges="keyboardHidden|orientation|screenSize"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:windowSoftInputMode="stateHidden|adjustResize" > <activity
android:name="cn.sharesdk.framework.ShareSDKUIShell"
android:configChanges="keyboardHidden|orientation|screenSize"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:windowSoftInputMode="stateHidden|adjustResize" >标签:
原文地址:http://blog.csdn.net/bless2015/article/details/46425037