angularjs实现微信授权登录,分享朋友圈,分享给好友(umeng)

先贴出一个链接:https://developer.umeng.com/docs/66632/detail/66825
友盟的开发文档
1.首先引入友盟集成
在这里插入图片描述

ng-click=“ctrl.shareProduct(targetCode)”; //targetCode为要区分的类型,自定义~

			/**
             * 执行分享操作
             * @param {number} targetCode - 分享类型码
             */
            share: function(targetCode) {
              	if (targetCode === SHARE_TARGET.COPY_LINK) {
              		//复制链接分享
                    ctrl.copyShareUrl().then(function() {
                        ctrl.close();
                    });
                } else if (targetCode === SHARE_TARGET.QRCODE) {
                	//二维码分享
                    ctrl.showQRCode();
                    ctrl.close();
                } else if (targetCode === SHARE_TARGET.PICTURE) {
                	//生成图片分享
                    ctrl.goSharePicture();
                    ctrl.close();
                } else {
                	//分享朋友圈,发送给好友
                    ctrl.close();
                    userService.eventMarket();
                    shareService.share(targetCode).finally(() => {
                        const backButtonHandler = $ionicPlatform.registerBackButtonAction(() => {
                            // 该 action 仅为屏蔽后续操作,因此不做任何事情
                        }, 1000);
                        setTimeout(() => {
                            backButtonHandler();
                        }, 500);
                    });
                }
            },
		// 定义前端自定义的分享目标类型与 umeng 原生插件中定义的目标类型名称之间的映射关系
        let umengTypeKeys = {};
        umengTypeKeys[SHARE_TARGET.WECHAT_FIREND] = 'wxsession';
        umengTypeKeys[SHARE_TARGET.WECHAT_TIMELINE] = 'wxtimeline';
        umengTypeKeys[SHARE_TARGET.QQ] = 'qq';
        umengTypeKeys[SHARE_TARGET.QZONE] = 'qzone';
        umengTypeKeys[SHARE_TARGET.SINA_WEIBO] = 'sina';
			
			/**
             * 将当前所设置的分享信息分享到指定的第三方社交平台
             * @param {number} [targetType] - 分享目标类型,具体定义见 SHARE_TARGET
             */
             share: function(targetType) {
                let umengTypeKey = umengTypeKeys[targetType];
                let deferred = $cmApi.defer();
                if (umengTypeKey) {
                    umeng.shareByType(
                        this.shareInfo.sharetitle,
                        this.shareInfo.sharemessage,
                        this.shareInfo.sharepic,
                        this.shareInfo.shareurl,
                        umengTypeKey,
                        function(platform) {
                            deferred.resolve(platform);
                        }
                    );
                } else {
                    deferred.reject(APP_STATE_CODE.notSupportShareType);
                }
                return deferred.promise;
            },
			/**
             * 商品详情页分享返利生成商品邀请纯图片并分享
             * @param {number} [targetType] - 分享目标类型,具体定义见 SHARE_TARGET
             */
            shareProductPicture: function(targetType, pic) {
                let umengTypeKey = umengTypeKeys[targetType];
                let deferred = $cmApi.defer();
                if (umengTypeKey) {
                    umeng.shareImageByType(pic, umengTypeKey, function(platform) {
                        deferred.resolve(platform);
                    });
                } else {
                    deferred.reject(APP_STATE_CODE.notSupportShareType);
                }
                return deferred.promise;
            },
			/**
             * 微信授权登录
             */
            wxlogin:function(){
                umeng.login('wechat', function(result) {
                    return result;
                });
            },

主要就是用到
umeng.shareByType各种分享到
umeng.login授权登录获取用户信息
umeng.shareImageByType分享纯图片

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章