友盟朋友圈社区使用详解-(无UI版)

 (如果你down下来sdk是懵比的 那么你可以看一看. 希望能有帮助.)  

 今天开始做朋友圈功能,本来是自己自定义.突然发现友盟有这个api   秉着不去重复造轮子的思想. 决定用造好的轮子.  友盟的版块分为  精简版.微博版.论坛版.无UI版. 前面都还好.  主要就是无UI版  发现什么提示都没有. 很蛋疼,有木有.  这篇文章写下来 就是想下次有做的朋友 可以少走一些弯路.多少能提供一些帮助. 

   首先下载无UI版的Sdk 打开后会看到里面有如下内容

         


      这三个核心包 里面的libs文件和res文件 放到对应的目录文件下即可.(注意jar包冲突.!!)

       整合进来以后就该配置了.


一:在注册清单ManiFest文件 添加在UMeng申请到的appKey以及Secret  

<span style="font-size:18px;"> <span style="white-space:pre">	</span><meta-data
            android:name="UMENG_APPKEY"
            android:value="Your_AppKey" />
        <meta-data
            android:name="UMENG_MESSAGE_SECRET"
            android:value="Your_Secret"/></span>

(接下来就该在代码里用了. 因为无UI版就是只提供了他们的Api而已. 所以就看看代码里 我们应该调用哪些Api)



:首先要登陆到友盟社区(这里登陆以后 自动的帮用户在友盟后台注册)

友盟状态码查询

<span style="font-size:18px;">/**
     * 登陆到UMeng
     * @param mContext
     * @param userName 用户名
     * @param uId   用户Id
     */
    public void loginToUmeng(Context mContext,String userName,String uId){
        //创建CommUser前必须先初始化CommunitySDK
        CommunitySDK communitySDK = getUsdk(mContext);
        CommUser user = new CommUser();
        user.name = userName;
        user.id = uId;
        communitySDK.loginToUmengServerBySelfAccount(mContext, user, new LoginListener() {//调用登录接口
            @Override
            public void onStart() {
            }
            @Override
            public void onComplete(int stCode, CommUser commUser) {
                Log.d("tag", "login result is"+stCode);//获取登录结果状态码
                if (ErrorCode.NO_ERROR==stCode) {
                    //在此处可以跳转到任何一个你想要的activity
                    LogUtil.e("登陆社区成功");
                }
            }
        });
    }</span>

那么对应的有登录. 习惯性的就刚好把登出的操作也做一下

<span style="font-size:18px;"> /**
     * 登出友盟社区
     * @param mContext
     */
    public void logout(Context mContext){
        getUsdk(mContext).logout(mContext, new LoginListener() {//调用登出接口
            @Override
            public void onStart() {
            }
            @Override
            public void onComplete(int stCode, CommUser commUser) {
                if(stCode==ErrorCode.SUCCESS){
                    //登出成功
                    LogUtil.e("登出成功");
                }
            }
        });
    }</span>
//这样一来  登陆 和登出的操作都有了. 只需要在对应的回调里执行对应方法即可(当用户在本App登录成功的时候 开始调用Umeng登录接口)

//留一下User文档.以便拓展

字段
限定符和类型 字段和说明
int age
用户年龄
static android.os.Parcelable.Creator<CommUser> CREATOR 
int currency
货币字段
android.os.Bundle extraData
其他信息
int fansCount
粉丝数量
int feedCount
未读消息数
int followCount
关注数
CommUser.Gender gender
用户性别
String iconUrl
用户头像url
boolean isFollowed
登录用户是否关注该用户
boolean isFollowingMe
该用户是否关注登录用户
boolean isRecommended
该用户是否被推荐。
int level
用户等级
String levelTitle
用户等级的名称
int likeCount
点赞数
int likedCount
被点赞数
int lock_currency
锁定货币字段
List<Medal> medals
勋章
String name
用户昵称
CommUser.Permisson permisson
用户权限, 默认为匿名用户权限
int point
积分
int score
自定义积分接口
Source source
用户登录来源,默认为友盟登录;例如sina,qq,qzone等都可以.
String sourceUid
三方平台uid
int status
用户的状态
List<CommUser.SubPermission> subPermissions
该用户的子权限,一个用户可能存在多种权限。
String token
用户在友盟服务器的token
List<Topic> topics
关注话题数
int unReadCount
未读消息数

三:发表说说/帖子

<span style="font-size:18px;">/**
     * 创建帖子/说说
     * @param mContext
     * @param feedItem 要创建的帖子实体
     * @param simpleFetchListener //结果回调监听
     */
    public void createFeed(Context mContext, FeedItem feedItem, Listeners.SimpleFetchListener<FeedItemResponse> simpleFetchListener){
        getUsdk(mContext).postFeed(feedItem,simpleFetchListener);
    }</span>

<span style="font-size:18px;">   /**
     * 发表说说
     */
    private void send() {
        //创建帖子实例
        FeedItem feedItem = new FeedItem();
        feedItem.text = "test Create";//帖子文本
        feedItem.title = "test title";//帖子标题
        feedItem.addTime ="1997/1/1";//发表时间
//      feedItem.imageUrls = null;//图片列表
        feedItem.locationAddr="M78 Planet";//发布坐标
        feedItem.media_type = getTextType();//文本类型--0:纯文本---1:富文本--2:视频流
        feedItem.status = FeedItem.STATUS_NORMAL;//帖子状态.
        feedItem.type = 0;//公告 Or 普通帖子.
        UMengCircleHelper.getInstance().createFeed(this, feedItem, new Listeners.SimpleFetchListener<FeedItemResponse>() {
            @Override
            public void onComplete(FeedItemResponse response) {
                Log.e("TAG","帖子创建成功"+response.result.text);
            }
        });
    }</span>
FeedItem字段Api

限定符和类型 字段和说明
int addScore
增加积分
String addTime
收藏时间
static int ANNOUNCEMENT_FEED
公告
List<CommUser> atFriends 
boolean ban_user
是否可禁言
FeedItem.CATEGORY category
Feed的类型。
int commentCount
评论条数
List<Comment> comments
评论列表
CommUser creator
发出该消息的用户
static android.os.Parcelable.Creator<FeedItem> CREATOR 
int distance
feed 的距离
android.os.Bundle extraData
存储附加数据,不会存储到数据库中
int forwardCount
转发条数
List<ImageItem> imageUrls
图片列表
boolean isCollected
是否是收藏贴
boolean isFriends
是否是朋友帖子
boolean isLiked
是否点赞
boolean isNearby
是否是附近的帖子
boolean isRecommended
推荐
int isTop
是否置顶
int likeCount
like条数
List<Like> likes
赞列表
android.location.Location location
发布该消息时所在的位置
String locationAddr
发布的位置
int media_type
文本类型:0普通文本 1富文本 2视频
String nextPageUrl
下一页feed的url地址
static int NORMAL_FEED
普通feed被点赞数
int permission
feed字段 >=100可以删帖子
String publishTime
发布时间
String rich_content
富文本内容
int seqNumber
唯一序列号
String shareLink
分享链接
FeedItem sourceFeed
原生feed
String sourceFeedId
原生feedId
int status
feed的状态
static int STATUS_DELETE
被删除
static int STATUS_LOCK
被锁定
static int STATUS_NORMAL
正常
static int STATUS_SENSITIVE
含有敏感信息
static int STATUS_SNOW
被管理员删除
static int STATUS_SPAM
被屏蔽
static int STATUS_VOTED
被举报
int tag
feed字段 tag为精华
String text
文本内容
String title
Feed 标题
static int TOP_FEED
置顶的Feed
List<Topic> topics
所属话题
int type
feed 类型, 0为普通类型,1为公告类型

至此接下来的就是这样的操作 往复循环. 在 友盟官方Api找到你要用的接口用CommunitySdk对象直接调用

                    


如果需要传友盟定义的参数 如FeedItem CommUser这样的对象.在你下载包的根目录 api_doc/java_doc/index.html文件打开 找到你要看的类 如图

                       





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值