使用友盟QQ分享和QQ空间分享及遇到的问题解决

来源:互联网 发布:ubuntu虚拟机 编辑:程序博客网 时间:2024/05/16 05:26

基于eclipse,友盟社会化组件6.0

1.配置注意事项

全局配置

AndroidManifest配置注意事项-QQ和微信的配置

  <activity            android:name="<span style="color:#ff6600;"><strong>.wxapi.WXEntryActivity</strong></span>"<!-- 不能改成自己的路径,就按这个路径复制WXEntryActivity-->            android:configChanges="keyboardHidden|orientation|screenSize"            android:exported="true"            android:screenOrientation="portrait"            android:theme="@android:style/Theme.Translucent.NoTitleBar" />        <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="tencent<span style="color:#ff6600;"><strong>1105644869</strong></span>" /><!-- 这串id就是在qq开发者平台申请的APPID,换成自己的,前缀tencent不能改 -->            </intent-filter>        </activity>        <activity            android:name="com.tencent.connect.common.AssistActivity"            android:screenOrientation="portrait"            android:theme="@android:style/Theme.Translucent.NoTitleBar" />        <activity            android:name="com.umeng.socialize.editorpage.ShareActivity"            android:excludeFromRecents="true"            android:theme="@style/Theme.UMDefault" />        <!-- qq end -->           <meta-data        android:name="UMENG_APPKEY"        android:value="<span style="color:#ff6600;">57e780d1e0f55a1cfxxxxxx</span>" ><!-- 这串id是在友盟平台申请的应用id,换成自己的 -->    </meta-data>
2.打开分享面板

UMImage umImage = new UMImage(MyShareActivity.this, "http://dev.umeng.com/images/tab2_1.png");

final SHARE_MEDIA[] displaylist = new SHARE_MEDIA[] { SHARE_MEDIA.QQ, SHARE_MEDIA.WEIXIN_CIRCLE,SHARE_MEDIA.QZONE };new ShareAction(this).<span style="font-size:14px;color:#ff6600;"><strong>setDisplayList</strong></span>(displaylist).withText("这是内容").withTargetUrl("https://www.baidu.com/").withMedia(umImage).withTitle("这是标题").setShareboardclickCallback(MyShareBoardlistener).open();
注意:打开分享面板是用setDisplayList!!!!!!!
3.单平台分享

QQ分享

new ShareAction(MyShareActivity.this).setCallback(MyUMShareListener).withText(shareContent).withTargetUrl(shareUrl).withTitle(shareTittle).withMedia(umImage).<span style="font-size:14px;color:#ff0000;"><strong>setPlatform</strong></span>(SHARE_MEDIA.QQ).share();

QQ空间分享:

new ShareAction(MyShareActivity.this).setPlatform(SHARE_MEDIA.QZONE).setCallback(MyUMShareListener).withText(shareContent).withTargetUrl(shareUrl).withTitle(shareTittle).withMedia(umImage).share();

注意:打开平台的分享是用setPlatform!!!

4.问题集锦
09-28 09:40:09.330: E/AndroidRuntime(1056): java.lang.NullPointerException09-28 09:40:09.330: E/AndroidRuntime(1056): at com.umeng.socialize.UMShareAPI$5.doInBackground(UMShareAPI.java:205)09-28 09:40:09.330: E/AndroidRuntime(1056): at com.umeng.socialize.UMShareAPI$5.doInBackground(UMShareAPI.java:198)09-28 09:40:09.330: E/AndroidRuntime(1056): at com.umeng.socialize.common.QueuedWork$UMAsyncTask$1.run(QueuedWork.java:134)09-28 09:40:09.330: E/AndroidRuntime(1056): at android.os.Handler.handleCallback(Handler.java:733)09-28 09:40:09.330: E/AndroidRuntime(1056): at android.os.Handler.dispatchMessage(Handler.java:95)09-28 09:40:09.330: E/AndroidRuntime(1056): at android.os.Looper.loop(Looper.java:136)09-28 09:40:09.330: E/AndroidRuntime(1056): at android.os.HandlerThread.run(HandlerThread.java:61)09-28 09:40:09.395: D/CubicBezierInterpolator(1056): CubicBezierInterpolator  mControlPoint1x = 0.2, mControlPoint1y = 0.65, mControlPoint2x = 0.28, mControlPoint2y = 0.9709-28 09:40:09.395: D/CubicBezierInterpolator(1056): CubicBezierInterpolator  mControlPoint1x = 0.2, mControlPoint1y = 0.65, mControlPoint2x = 0.28, mControlPoint2y = 0.9709-28 09:40:09.395: D/CubicBezierInterpolator(1056): CubicBezierInterpolator  mControlPoint1x = 0.2, mControlPoint1y = 0.65, mControlPoint2x = 0.28, mControlPoint2y = 0.9709-28 09:40:09.395: D/CubicBezierInterpolator(1056): CubicBezierInterpolator  mControlPoint1x = 0.2, mControlPoint1y = 0.65, mControlPoint2x = 0.28, mControlPoint2y = 0.9709-28 09:40:09.400: D/dalvikvm(1056): ---Heap option for 62977609-28 09:40:09.430: D/dalvikvm(1056): GC_FOR_ALLOC freed 414K, 9% free 31401K/34196K, paused 23ms, total 23ms09-28 09:40:09.475: D/SocializeNetUtils(1056): ##### 未加密参数 : dc=com.umeng.share&dt=1475026809475&os=Android&md5imei=5A65194E19943345A9BB2D807120F5F3&tp=1&imei=866568025570507&use_coco2dx=0&opid=1&mac=90%3A67%3A1c%3A03%3A38%3Aec&ak=57e780d1e0f55a1cf20017ea&de=H60-L01&sdkv=6.0.0&pcv=2.0&en=Wi-Fi&ni=109-28 09:40:09.485: D/SocializeNetUtils(1056): #### 完整请求链接 : http://log.umsns.com/bar/get/57e780d1e0f55a1cf20017ea/?ud_get=beAlnquztJx2f7Kj1qCjVT/jx4WCWB5ffH3S7ocBv3/0Kdam072nQwOJBojv8ydl0dk/VGVg+I7ZGKpf051JLEz56evPY5Umf82TKpuYbxdqwLp+DMJwhgPhnd1pfYRwrjue4OOotrpdYLPl790NTRRWi49soku9r8zYy0GGqMYn20WpJ6C3+zoZiYeoiDWzQ7A6VpD4PrbTvcJ75wONkqup6bKOH1cqMKkGuLRbavGjJe6zavtUKez+Jml0x6vpGir/0xcx6RuL20Ryqz4hYuukOGUd4VmdiDZYC6QuocHqdozkobGFSezR0BrGP3tK09-28 09:40:09.515: D/SocializeNetUtils(1056): ##### 未加密参数 : dc=com.umeng.share&dt=1475026809519&os=Android&md5imei=5A65194E19943345A9BB2D807120F5F3&tp=1&imei=866568025570507&use_coco2dx=0&opid=1&mac=90%3A67%3A1c%3A03%3A38%3Aec&ak=57e780d1e0f55a1cf20017ea&de=H60-L01&sdkv=6.0.0&pcv=2.0&en=Wi-Fi&ni=109-28 09:40:09.515: D/SocializeNetUtils(1056): #### 完整请求链接 : http://log.umsns.com/bar/get/57e780d1e0f55a1cf20017ea/?ud_get=beAlnquztJx2f7Kj1qCjVT/jx4WCWB5ffH3S7ocBv393L4anMG/70POgQEG7btswZpEty7mxORIbGiwWCbC9A1exF58TBlQSGKKKf7aw3H2lS5orjRcfb8AaghOxHrqKo7OQygEx4ZEeGn6jYldQGjkEdYgiC/L7VIayGPVYf/s/9OuBjRb3N0zWMjc+y7R/azl89HWze6CXl2bg0JL3Zm7ZcSGqQ47c1uZyk2jBbjwaG2eDWjfZBDJRlEEuhwbdUI/GZtjhroOsZoGx06v2+Ph0U9DWszb3JQCNlDNj6VWchE+lwCG2GX4Of4W+yqzg09-28 09:40:09.565: D/zhu(1056): userZuanshi==009-28 09:40:09.700: E/WindowManager(1056): android.view.WindowLeaked: Activity com.mdxx.wzng.MyShareActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView{434e29d0 V.E..... R.....ID 0,0-316,345} that was originally added here09-28 09:40:09.700: E/WindowManager(1056): at android.view.ViewRootImpl.<init>(ViewRootImpl.java:381)09-28 09:40:09.700: E/WindowManager(1056): at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:258)09-28 09:40:09.700: E/WindowManager(1056): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)09-28 09:40:09.700: E/WindowManager(1056): at android.app.Dialog.show(Dialog.java:323)09-28 09:40:09.700: E/WindowManager(1056): at com.umeng.socialize.utils.SocializeUtils.safeShowDialog(SocializeUtils.java:197)09-28 09:40:09.700: E/WindowManager(1056): at com.umeng.socialize.common.QueuedWork$DialogThread.onPreExecute(QueuedWork.java:95)09-28 09:40:09.700: E/WindowManager(1056): at com.umeng.socialize.common.QueuedWork$UMAsyncTask$2.run(QueuedWork.java:147)09-28 09:40:09.700: E/WindowManager(1056): at android.os.Handler.handleCallback(Handler.java:733)09-28 09:40:09.700: E/WindowManager(1056): at android.os.Handler.dispatchMessage(Handler.java:95)09-28 09:40:09.700: E/WindowManager(1056): at android.os.Looper.loop(Looper.java:136)09-28 09:40:09.700: E/WindowManager(1056): at android.app.ActivityThread.main(ActivityThread.java:5314)09-28 09:40:09.700: E/WindowManager(1056): at java.lang.reflect.Method.invokeNative(Native Method)09-28 09:40:09.700: E/WindowManager(1056): at java.lang.reflect.Method.invoke(Method.java:515)09-28 09:40:09.700: E/WindowManager(1056): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864)09-28 09:40:09.700: E/WindowManager(1056): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:680)09-28 09:40:09.700: E/WindowManager(1056): at dalvik.system.NativeStart.main(Native Method)

解决:就是setDisplayList和setPlatform弄混掉的原因。单平台分享的时候用了setDisplayList。

正确的用法见上一点。


问题2:ClassNotFound

09-28 15:21:05.215: V/Exception(1583): java.lang.StackOverflowError09-28 15:21:05.215: V/Exception(1583): at java.lang.Throwable.<init>(Throwable.java:67)09-28 15:21:05.215: V/Exception(1583): at java.lang.Exception.<init>(Exception.java:47)09-28 15:21:05.215: V/Exception(1583): at java.lang.ReflectiveOperationException.<init>(ReflectiveOperationException.java:37)09-28 15:21:05.215: V/Exception(1583): at java.lang.ClassNotFoundException.<init>(ClassNotFoundException.java:59)09-28 15:21:05.215: V/Exception(1583): at java.lang.Class.classForName(Native Method)09-28 15:21:05.215: V/Exception(1583): at java.lang.Class.forName(Class.java:251)09-28 15:21:05.215: V/Exception(1583): at java.lang.Class.forName(Class.java:216)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:130)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:141)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.controller.SocialRouter.newHandler(SocialRouter.java:137)09-28 15:21:05.215: V/Exception(1583): at com.umeng.socialize.con09-28 15:21:05.415: W/APP_SDK(1583): Send error log!
解决:首先得确定下是自己写的类找不到,还是jar包里面的类找不到。通过日志文件可知,是 com.umeng.socialize.controller.SocialRouter.newHandler这个类找不到。

后来是友盟给换了一个新的jar包才解决的。至于原因,只有他们知道了。

5.如果分享不了的,首先检查ID和KEY是否填写正确!!!这一点很重要!!!!!!!!!!!























0 0