不使用官方SDK,实现微信分享(发送到朋友,发送到朋友圈)

来源:互联网 发布:polyfit函数的算法 编辑:程序博客网 时间:2024/05/16 08:11

记得当项目里需要些微信分享,所以我也去下载了微信的sdk,测试以后,失败了。一直跳转不到绑定微信的页面   找了很久没发现问题到底出在哪。  在网上查资料的时候发现有很多人遇到了同样的问题但都没解决,  找了很久 最后找到一个帖子里 有高手直接用intent在应用程序间的通信来实现了微信分享,前提是该用户手机里要有安装微信  。代码就是下面这段

private void shareToFriend(File file) {                Intent intent = new Intent();                ComponentName comp = new ComponentName("com.tencent.mm",                                "com.tencent.mm.ui.tools.ShareImgUI");                intent.setComponent(comp);                intent.setAction("android.intent.action.SEND");                intent.setType("image/*");                //intent.setFlags(0x3000001);                intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));                startActivity(intent);        }        private void shareToTimeLine(File file) {                Intent intent = new Intent();                ComponentName comp = new ComponentName("com.tencent.mm",                                "com.tencent.mm.ui.tools.ShareToTimeLineUI");                intent.setComponent(comp);                intent.setAction("android.intent.action.SEND");                intent.setType("image/*");                //intent.setFlags(0x3000001);                intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));                startActivity(intent);        }


 

当时觉得这段代码很神奇,短短几句就搞定了。但还是一直没把他这段代码放进项目里,毕竟不是官方的方法,难免存在许多纰漏,但这种思路确实值得学习。
后来我终于发现为什么我用官方的方法会一直不能成功了。
问题出在keystore上 在注册微信开放平台账号的时候 填写了我们项目打包的keystore, 但是我测试的时候跑程序用的是eclipse默认的keystore。这两者显然是不一样的,微信就是检测出这两者不一样所以一直没让我开发成功。呼 当时写的时候微博和微信分享都要写, 还直呼微博的SDK好用。
原创粉丝点击