• 第三方应用分享到微信朋友圈功能


    分享自http://blog.csdn.net/qianfu111/article/details/9115303

    最权威的学习资料还是要去看官网,以及官网提供的Demo,基本上你是可以直接拿来使用的,这是官网网站:http://open.weixin.qq.com/

             在微信分享中主要碰到了如下问题:第一次可以分享,以后就无法调用出分享对话框。这不是程序问题,而是需要提交审核,只有审核通过,才可以调出分享对话框。不相信?那你可以先将微信退出,再试着点击分享,这时就会弹出登录对话款,登完之后也没有分享对话框,完全没你啥事了。

            另外android版微信分享开发时,应用签名(推荐使用官网提供的签名生成工具)是由你的打包所使用的数字证书来决定的。不相信?那先卸载此程序,再将你的应用包名重新改下,不要改变数字证书,运行。然后运用此签名生成工具获取应用签名,完全一样。因此,正式的应用发布还是要自己生成一个数字证书比较好。如果签名不是很理解,请看我之前的一篇文章:http://blog.csdn.net/qianfu111/article/details/9113887

           下面是简单微信分享文字的程序源码,当然你另外需要导入微信的jar包:

    [java] view plaincopy
     
    1. package com.example.share;  
    2.   
    3. import android.app.Activity;  
    4. import android.os.Bundle;  
    5. import android.view.Menu;  
    6. import android.view.View;  
    7. import android.widget.Button;  
    8.   
    9. import com.haifei.share.R;  
    10. import com.tencent.mm.sdk.openapi.IWXAPI;  
    11. import com.tencent.mm.sdk.openapi.SendMessageToWX;  
    12. import com.tencent.mm.sdk.openapi.WXAPIFactory;  
    13. import com.tencent.mm.sdk.openapi.WXMediaMessage;  
    14. import com.tencent.mm.sdk.openapi.WXTextObject;  
    15.   
    16. public class MainActivity extends Activity {  
    17.   
    18.     private final String APP_ID = "wxbd8d9e9f2e348364";  
    19.     @Override  
    20.     public void onCreate(Bundle savedInstanceState) {  
    21.         super.onCreate(savedInstanceState);  
    22.         setContentView(R.layout.activity_main);  
    23.           
    24.         Button shareBtn = (Button)findViewById(R.id.button1);  
    25.         final IWXAPI api = WXAPIFactory.createWXAPI(getApplicationContext(),APP_ID,true);  
    26.         api.registerApp(APP_ID);  
    27.         shareBtn.setOnClickListener(new View.OnClickListener() {  
    28.               
    29.             @Override  
    30.             public void onClick(View v) {  
    31.                 // TODO Auto-generated method stub  
    32.                 //分享到朋友圈  
    33.                   
    34.                 // 初始化一个WXTextObject对象  
    35.                 String text = "share our application";  
    36.                 WXTextObject textObj = new WXTextObject();  
    37.                 textObj.text = text;  
    38.   
    39.                 WXMediaMessage msg = new WXMediaMessage(textObj);  
    40.                 msg.mediaObject = textObj;  
    41.                 msg.description = text;  
    42.                   
    43.                 SendMessageToWX.Req req = new SendMessageToWX.Req();  
    44.                 req.transaction = String.valueOf(System.currentTimeMillis());  
    45.                 req.message = msg;  
    46.                   
    47.                 api.sendReq(req);  
    48.             }  
    49.         });  
    50.     }  
    51.   
    52.     @Override  
    53.     public boolean onCreateOptionsMenu(Menu menu) {  
    54.         getMenuInflater().inflate(R.menu.activity_main, menu);  
    55.         return true;  
    56.     }  
    57. }  

    深入研究微信分享看这里:http://blog.csdn.net/dengbodb/article/details/7840113

  • 相关阅读:
    今天是全面开发的第一天,特此纪念
    Linux 进程管理 (ZZ)
    骑车上班
    VSFTPD配置小结(一)
    Flash Builder 4 在Chrome的调试
    测试一下Windows Live Writer
    转:C++强大的背后
    转:Flex中的Image屬性 (width, contentWidth, content.width)的差異
    Flash Builder 4 安装提示“安装程序检测到计算机重新启动操作可能处于挂起状态“的解决
    使用简单工厂和State模式替换冗余的 switchcase 语句
  • 原文地址:https://www.cnblogs.com/daishuguang/p/3849730.html
Copyright © 2020-2023  润新知