去官网下载libs包
//添加依赖
<!-- 允许程序打开网络套接字 --> <uses-permission android:name="android.permission.INTERNET" /> <!-- 允许程序设置内置sd卡的写权限 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- 允许程序获取网络状态 --> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- 允许程序访问WiFi网络信息 --> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!-- 允许程序读写手机状态和身份 --> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <!-- 允许程序访问CellID或WiFi热点来获取粗略的位置 --> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<activity android:name=".app.WXEntryActivity" android:configChanges="keyboardHidden|orientation|screenSize" android:exported="true" android:theme="@android:style/Theme.Translucent.NoTitleBar" ></activity> <activity android:name="com.tencent.tauth.AuthActivity" android:launchMode="singleTask" android:noHistory="true" > <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="tencent1105602574" /> </intent-filter> </activity> <activity android:name="com.tencent.connect.common.AssistActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:configChanges="orientation|keyboardHidden|screenSize"/>
在values包下创建umeng_socialize_shareview_strings
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="umeng_socialize_sharetosina">分享到新浪微博</string> <string name="umeng_socialize_sharetodouban">分享到豆瓣</string> <string name="umeng_socialize_sharetorenren">分享到人人网</string> <string name="umeng_socialize_sharetotencent">分享到腾讯微博</string> <string name="umeng_socialize_sharetotwitter">分享到twitter</string> <string name="umeng_socialize_sharetolinkin">分享到领英</string> </resources>
创建umeng_socialize_style
<?xml version="1.0" encoding="utf-8"?> <resources xmlns:android="http://schemas.android.com/apk/res/android"> <!--<style name="ACPLDialog">--> <!--<item name="android:windowFrame">@null</item>--> <!--<item name="android:windowNoTitle">true</item>--> <!--<item name="android:windowIsFloating">true</item>--> <!--<item name="android:windowContentOverlay">@null</item>--> <!--</style>--> <!--<style name="umeng_socialize_action_bar_itemlayout">--> <!--<item name="android:layout_height">fill_parent</item>--> <!--<item name="android:layout_width">fill_parent</item>--> <!--<item name="android:layout_weight">1</item>--> <!--<item name="android:paddingLeft">4dp</item>--> <!--<item name="android:paddingTop">4dp</item>--> <!--<item name="android:paddingRight">4dp</item>--> <!--<item name="android:gravity">center_vertical</item>--> <!--</style>--> <!--<style name="umeng_socialize_action_bar_item_im">--> <!--<item name="android:layout_width">25dp</item>--> <!--<item name="android:layout_height">25dp</item>--> <!--<item name="android:scaleType">fitCenter</item>--> <!--<item name="android:layout_centerVertical">true</item>--> <!--</style>--> <!--<style name="umeng_socialize_action_bar_item_tv">--> <!--<item name="android:layout_width">wrap_content</item>--> <!--<item name="android:layout_height">fill_parent</item>--> <!--<item name="android:layout_marginLeft">5dp</item>--> <!--<item name="android:text">999</item>--> <!--<item name="android:gravity">center</item>--> <!--<item name="android:textColor">#ffffff</item>--> <!--<item name="android:textSize">12sp</item>--> <!--<item name="android:textStyle">bold</item>--> <!--</style>--> <!--网页授权的布局--> <style name="umeng_socialize_popup_dialog" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <item name="android:windowIsFloating">true</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowNoTitle">true</item> <item name="android:background">@android:color/transparent</item> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:backgroundDimEnabled">true</item> <item name="android:backgroundDimAmount">0.6</item> </style> <!--<style name="Theme.UMDialog" parent="android:style/Theme.Dialog">--> <!--<item name="android:windowNoTitle">true</item>--> <!--<item name="android:windowBackground">@android:color/transparent</item>--> <!--</style>--> <style name="Theme.UMDefault" parent="android:style/Theme.NoTitleBar"></style> <!--<style name="umeng_socialize_divider">--> <!--<item name="android:layout_width">fill_parent</item>--> <!--<item name="android:layout_height">1dp</item>--> <!--<item name="android:background">@color/umeng_socialize_divider</item>--> <!--</style>--> <!--<style name="umeng_socialize_list_item">--> <!--<item name="android:layout_width">fill_parent</item>--> <!--<item name="android:layout_height">55dp</item>--> <!--<item name="android:background">@color/umeng_socialize_list_item_bgcolor</item>--> <!--<item name="android:paddingBottom">5dp</item>--> <!--<item name="android:paddingTop">5dp</item>--> <!--</style>--> <!--<style name="umeng_socialize_edit_padding">--> <!--<item name="android:layout_width">fill_parent</item>--> <!--<item name="android:layout_height">fill_parent</item>--> <!--<item name="android:background">@color/umeng_socialize_list_item_bgcolor</item>--> <!--<item name="android:layout_marginLeft">6dp</item>--> <!--<item name="android:layout_marginRight">6dp</item>--> <!--<item name="android:layout_marginTop">6dp</item>--> <!--<item name="android:layout_marginBottom">6dp</item>--> <!--</style>--> </resources>
//布局文件
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#D4E0E5" android:id="@+id/root" android:orientation="vertical"> <RelativeLayout android:id="@+id/umeng_socialize_share_titlebar" android:layout_width="match_parent" android:layout_height="54dp" android:background="#0086DC"> <TextView android:id="@+id/umeng_title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:text="" android:textColor="#ffffff" android:textSize="18sp" /> <RelativeLayout android:id="@+id/umeng_back" android:layout_width="50dp" android:layout_height="match_parent" android:onClick="onCancel" android:visibility="visible"> <ImageButton android:layout_width="12dp" android:layout_height="20dp" android:layout_centerVertical="true" android:layout_marginLeft="15dp" android:background="@drawable/umeng_socialize_back_icon" android:clickable="false" android:scaleType="center" /> </RelativeLayout> <TextView android:id="@+id/umeng_share_btn" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_alignParentRight="true" android:layout_centerInParent="true" android:gravity="center_vertical" android:paddingLeft="15dp" android:paddingRight="15dp" android:text="分享" android:textColor="#ffffff" android:textSize="15sp" /> </RelativeLayout> <EditText android:id="@+id/umeng_socialize_share_edittext" android:layout_width="fill_parent" android:layout_height="180dp" android:layout_below="@id/umeng_socialize_share_titlebar" android:paddingLeft="15dp" android:paddingRight="15dp" android:paddingTop="8dp" android:background="#ffffff" android:bufferType="spannable" android:gravity="top" android:hint="编辑分享内容" android:lineSpacingExtra="3dp" android:paddingBottom="10dp" android:textColor="#000000" android:textSize="15sp" /> <TextView android:id="@+id/umeng_socialize_share_word_num" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignRight="@id/umeng_socialize_share_edittext" android:background="#ffffff" android:layout_below="@id/umeng_socialize_share_edittext" android:paddingBottom="10dp" android:paddingRight="15dp" android:gravity="right" android:singleLine="true" android:textColor="#98999B" android:textSize="14sp" /> <RelativeLayout android:id="@+id/umeng_socialize_share_bottom_area" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/umeng_socialize_share_word_num" android:layout_marginLeft="15dp" android:layout_marginRight="15dp" android:background="#F2F5F6" android:visibility="gone"> <RelativeLayout android:layout_width="62dp" android:layout_height="62dp" android:layout_centerVertical="true" android:layout_marginBottom="15dp" android:layout_marginLeft="15dp" android:id="@+id/umeng_image_edge" android:layout_marginTop="15dp" android:background="@drawable/umeng_socialize_edit_bg" > <ImageView android:id="@+id/umeng_share_icon" android:layout_width="60dp" android:layout_height="60dp" android:layout_centerInParent="true" android:src="#2c3035" /> </RelativeLayout> <TextView android:layout_width="280dp" android:id="@+id/umeng_web_title" android:layout_toRightOf="@id/umeng_image_edge" android:layout_marginLeft="40dp" android:layout_marginTop="20dp" android:textColor="#575A5C" android:singleLine="true" android:textSize="14sp" android:visibility="gone" android:layout_height="wrap_content" /> <ImageView android:id="@+id/umeng_del" android:layout_width="20dp" android:layout_height="20dp" android:layout_alignRight="@id/umeng_image_edge" android:layout_alignTop="@id/umeng_image_edge" android:layout_marginRight="-10dp" android:layout_marginTop="-10dp" android:background="@drawable/umeng_socialize_delete" /> </RelativeLayout> </RelativeLayo
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#D4E0E5"> <RelativeLayout android:id="@+id/umeng_socialize_titlebar" android:layout_width="match_parent" android:layout_height="54dp" android:background="#0086DC"> <TextView android:id="@+id/umeng_title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:text="" android:textColor="#ffffff" android:textSize="18sp" /> <RelativeLayout android:id="@+id/umeng_back" android:layout_width="60dp" android:layout_height="match_parent" android:onClick="onCancel" android:visibility="visible"> <ImageButton android:layout_width="12dp" android:layout_height="20dp" android:layout_centerVertical="true" android:background="@drawable/umeng_socialize_back_icon" android:layout_marginLeft="15dp" android:scaleType="center" /> </RelativeLayout> <TextView android:id="@+id/umeng_share_btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_centerInParent="true" android:layout_marginRight="10dp" android:background="@drawable/umeng_socialize_btn_bg" android:padding="4dp" android:text="分享" android:textColor="#ffffff" /> </RelativeLayout> <RelativeLayout android:id="@+id/umeng_socialize_follow" android:layout_width="fill_parent" android:layout_height="40dp" android:layout_alignParentBottom="true" android:background="#AAAAAA" android:visibility="visible"> <CheckBox android:id="@+id/umeng_socialize_follow_check" android:layout_width="20dp" android:layout_height="20dp" android:layout_centerVertical="true" android:layout_marginLeft="20dp" android:checked="true" android:visibility="gone" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginLeft="15dp" android:layout_toRightOf="@id/umeng_socialize_follow_check" android:text="关注官方微博" android:textColor="#f8f8f8" android:textSize="16sp" android:visibility="gone" /> </RelativeLayout> <!--<LinearLayout--> <!--android:id="@+id/webView_container"--> <!--android:layout_width="match_parent"--> <!--android:layout_height="match_parent"--> <!--android:layout_above="@id/umeng_socialize_follow"--> <!--android:layout_below="@id/umeng_socialize_titlebar"--> <!--android:orientation="horizontal"--> <!--android:visibility="visible" />--> <WebView android:id="@+id/webView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#F2F5F6" android:layout_above="@id/umeng_socialize_follow" android:layout_below="@id/umeng_socialize_titlebar" android:visibility="visible" /> <RelativeLayout android:id="@+id/progress_bar_parent" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_below="@id/umeng_socialize_titlebar" android:background="#F2F5F6" > <LinearLayout android:layout_width="80dp" android:layout_height="80dp" android:layout_centerInParent="true" android:orientation="horizontal"> <ProgressBar android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_margin="10dp" /> </LinearLayout> </RelativeLayout> </RelativeLay
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:orientation="vertical"> <com.umeng.socialize.shareboard.SocializeImageView android:id="@+id/socialize_image_view" android:layout_width="50dp" android:layout_height="50dp" android:padding="5dp" android:src="@drawable/umeng_socialize_menu_default" /> <TextView android:id="@+id/socialize_text_view" android:layout_width="63dp" android:layout_height="wrap_content" android:layout_marginTop="6dp" android:ellipsize="end" android:singleLine="true" android:text="未知" android:textSize="12sp" /> </LinearLayout>
//初始化APP
package com.example.jingdong.app; import android.app.Application; import com.umeng.commonsdk.UMConfigure; import com.umeng.socialize.PlatformConfig; public class MyApp extends Application { { //PlatformConfig.setWeixin("1105602574", "3baf1193c85774b3fd9d18447d76cab0"); PlatformConfig.setQQZone("1106788439", "qwQLs9n3pNWxqFM4"); } @Override public void onCreate() { super.onCreate(); UMConfigure.init(this,"5b01634fa40fa361f20000bb" ,"umeng",UMConfigure.DEVICE_TYPE_PHONE,""); } } 代码
qq.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { UMImage image = new UMImage(LoginActivity.this, R.drawable.mqq); UMWeb web = new UMWeb(url); web.setTitle("百度");//标题 web.setThumb(image); web.setDescription("百度一下,你就知道");//描述 new ShareAction(LoginActivity.this).withMedia(web) .setDisplayList(SHARE_MEDIA.SINA,SHARE_MEDIA.QQ,SHARE_MEDIA.WEIXIN) .setCallback(shareListener).open(); } }); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data); }
private UMShareListener shareListener = new UMShareListener() { /** * @descrption 分享开始的回调 * @param platform 平台类型 */ @Override public void onStart(SHARE_MEDIA platform) { } /** * @descrption 分享成功的回调 * @param platform 平台类型 */ @Override public void onResult(SHARE_MEDIA platform) { Toast.makeText(LoginActivity.this,"成功了",Toast.LENGTH_LONG).show(); } /** * @descrption 分享失败的回调 * @param platform 平台类型 * @param t 错误原因 */ @Override public void onError(SHARE_MEDIA platform, Throwable t) { Toast.makeText(LoginActivity.this,"失败"+t.getMessage(),Toast.LENGTH_LONG).show(); } /** * @descrption 分享取消的回调 * @param platform 平台类型 */ @Override public void onCancel(SHARE_MEDIA platform) { Toast.makeText(LoginActivity.this,"取消了",Toast.LENGTH_LONG).show(); } };
//登录改一下方法 布局不变
qq.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { UMShareAPI mShareAPI = UMShareAPI.get(LoginActivity.this); mShareAPI.getPlatformInfo(LoginActivity.this, SHARE_MEDIA.QQ, umAuthListener); } }); }
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data); } UMAuthListener umAuthListener = new UMAuthListener() { @Override public void onStart(SHARE_MEDIA share_media) { Log.e("onStart", "onStart"); } //授权成功了。map里面就封装了一些qq信息 @Override public void onComplete(SHARE_MEDIA share_media, int i, Map<String, String> map) { /* tv.setText(map.get("name"));//QQ名字 Glide.with(L.this).load(map.get("iconurl")).into(iv);//QQ头像*/ String uid= map.get("uid"); String openid = map.get("openid");//微博没有 String unionid = map.get("unionid");//微博没有 String access_token = map.get("access_token"); String refresh_token = map.get("refresh_token");//微信,qq,微博都没有获取到 String expires_in = map.get("expires_in"); String name = map.get("name"); String gender = map.get("gender");//性别 String iconurl = map.get("iconurl");//头像 Toast.makeText(getApplicationContext(), "name=" + name + ",gender=" + gender, Toast.LENGTH_SHORT).show(); } //授权失败 @Override public void onError(SHARE_MEDIA share_media, int i, Throwable throwable) { Log.e("onError", "onError"); } @Override public void onCancel(SHARE_MEDIA share_media, int i) { Log.e("onCancel", "onCancel"); } }; }