环信 IM 组件接入介绍

一,项目说明

利用 ApkPlug 插件化框架将环信 DEMO 组件化,以实现按需动态加载和减小应用体积的 目的。

环信 IM 是目前移动开发中非常棒的 IM 聊天开发工具,开发者可以使用它可以轻松的为自己的应用嵌入 IM 聊天功能,然而在接入过程中我们依然会遇到一些问题。

1. SDK 包比较大,根据环信官网提供的 DEMO,所以聊天功能加起来有 5M 左右。

2. 同时在设计聊天界面过程中,不可避免的要引入资源文件,这对我们应用后期维护 造成不小的干扰。

源码下载地址

二,项目所使用到的开发库

Apkplug v2.7.7 版本   (必须是 v2.7.7 以上版本,否则无法运行)

Apkplug 插件托管服务 v1.8.0 版本以上

EaseMobSDKDEMO v2.1.6 (使用的最新版本 DEMO)

三,项目目录结构

EaseMobChat           ---主应用演示 DEMO

HuanxinPlugDemo       ---环信IM 组件的具体实现【您可修改实现自定义效果】 

PlugIMSDK1.0.0.jar   --组件调用库

四,使用步骤

1,主应用中加入 ApkPlug 框架

关于 ApkPlug 使用可见官方的接入文档,有了 apkplug 我们可以动态加载环信 IM 组件,还有 ShareSDK 组件等。未来 apkplug 组件市场还会不断加入更多的组件提供给开发者使用。

1. apkplug 框架  (用于加载环信 IM 组件) 【核心】

2. apkplug 托管服务 SDK (用于从服务器动态下载组件)【开发者可替换为自己的 下载服务】

2,导入 PlugIMSDK 调用库

将 PlugIMSDK1.0.0.jar 拷贝到主应用的libs 目录下即可。

3,配置相关权限

<span style="font-size:12px;"><!-- APKPLUG框架须要的权限 -->
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

<!—环信IM SDK须要的权限 -->
<uses-permission android:name="android.permission.VIBRATE"  />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO"  />
<uses-permission android:name="android.permission.CAMERA"  />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"  />
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"  />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"  />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"  />
<uses-permission android:name="android.permission.GET_TASKS"  />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"  />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"  />
<uses-permission android:name="android.permission.WAKE_LOCK"  />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"  />
<uses-permission android:name="android.permission.READ_PHONE_STATE"  />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"  />
<uses-permission android:name="android.permission.GET_ACCOUNTS"  />
<uses-permission android:name="android.permission.USE_CREDENTIALS"  />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS"  />
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"  />
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
<uses-permission android:name="android.permission.BROADCAST_STICKY"  />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
</span>

4,配置环信需要的相关信息

<pre name="code" class="java"><span style="font-size:12px;"><!-- 设置环信应用的appkey -->
 
<meta-data
android:name="EASEMOB_APPKEY" android:value="easemob-demo#chatdemoui" />
 
<!-- 声明sdk所需的service -->
<service android:name="com.easemob.chat.EMChatService" />

<!-- umeng appkey,可忽略 -->
<meta-data
android:name="UMENG_APPKEY" android:value="53912a3156240b01a7075ed1" >
</meta-data></span>
<span style="font-size:12px;">
<meta-data
android:name="com.baidu.lbsapi.API_KEY" 
android:value="3ecea51f560650b1ed8a4b99808f52e8" /></span>

 
 
注释说明:
ApkPlug框架普通版本不支持插件Service,因此需要在宿主配置对插件的Service行配置
5,调用环信 IM 组件

以上步骤配置完成以后即可使用环信IM 组件了,使用方式非常简单,以分享功能为例 

IMSdkAgent imsdkagent=new IMSdkAgent(this,frame.getSystemBundleContext()); imsdkagent.StatIMSDK(
new CheckInitCallBack(){
@Override
public void onSuccess(PlugIMSDK service) { Log.e("", "PlugIMSDK");
//这里就会启动环信界面了
service.StartIM("");
}
@Override
public void onFailure(int errorNo, String strMsg) { Log.e("onFailure", strMsg);
}
});

6,  功能说明

1.    目前 apkplug 的环信 IM 组件不支持其百度地图定位功能

2.    现在如果您想自定义 IM 聊天界面只需要 HuanxinPlugDemo 工程即可,主应用一点都不 用改动了哦。

7,操作演示

源码及 Demo 地址:http://store.apkplug.com/pluginfo?plugid=201504012048051




详细见:http://store.apkplug.com/pluginfo?plugid=201504012048051
QQ交流群:132433459





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WebIM说明 WebIM是一款基于jQuery的一款web即时通讯插件,姑且这么称呼吧。插件最大程度实现了IM的常用功能,除即时通讯的常用功能外,还加入了:消息盒子、窗口抖动、添加删除好友、最近联系人、超时登录界面、网站小秘书、聊天记录、发送频率限制、发送产品、发送名片、发送表情、产品分享、黑名单、举报、收藏、公告、智能网址过滤、消息提醒、修改资料、名片二维码、禁止粘贴、收起联系人列表、推荐好友等30余项改进。全浏览器兼容。 插件调用简单方便,只需在现有的web系统中加入几行代码,理论上可嵌入任何web系统。 2012年项目,已不再维护。 配置 $(function() { $(document).FnWebIM({ autoLogin :true, //boolean型,默认是否自动登录,true:自动登录,false:手动登录,默认为true msgRefreshTime :1000, //number型,消息刷新时间,单位为ms friendRefreshTime :10000, //number型,好友刷新时间,单位为ms showSecretary :true, //boolean型,默认是否显示小秘书,true:显示,false:不显示,默认为true noticeContent :"唐僧师徒历经千辛万苦,终于见到了佛祖……", //string型,公告内容 为空时不显示公告 sendPicture :true, //boolean型,是否允许发送图片,true:允许,false:不允许,默认为true msgMaxSize :300, //number型,单条消息最大允许字符 msgSound :false, //boolean型,是否开启声音提醒,true:开启,false:关闭,默认为true defaultWindow :"" //string型,登录后打开新聊天窗口,此处接收的参数为联系人的uid,否则会出错 }); }); 详细说明文档 http://www.zi-han.net/case/im/help.html 示例 http://www.zi-han.net/developer/721.html 注意 请在服务器(如localhost)境下打开

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值