zoukankan      html  css  js  c++  java
  • 环信集成时常见错误

    1、官方文档是2.0+的介绍,里面的jar包名不同,所以导致内部的类所用的包名也不同个,集成时注意:

           com.easemob.chat.EMChatService(2.0+) com.hyphenate.chat.EMChatService(3.0+)

    2、application中初始化的时候注意:

            EMChat.getInstance().setDebugMode(true);//在做打包混淆时,要关闭debug模式,避免消耗不必要的资源

    3、在MyApplication中初始化环信时调用的EMChat.getInstance().init(this);方法一定要保证执行。

             首先,记得在清单文件的application标签下注册下我们创建的Myapplication  ,也就是在application标签下加入:
             android:name=".Myapp"//这个是android studio下的格式,如果用eclipse需要放入全类名

                     如果是以上原因导致的inti()方法没执行,会在环信注册功能的时候    报:Can't create handler inside thread that has not calledLooper.prepare()错误

             另外,环信文档中说明的为了防止初始化两次,让app中有第三方服务的时候写入以下代码:

           

    1  
    2 if (processAppName == null ||!processAppName.equalsIgnoreCase("com.easemob.chatuidemo")) {
    3     Log.e(TAG, "enter the service process!");
    4     //"com.easemob.chatuidemo"为demo的包名,换到自己项目中要改成自己包名
    5  
    6     // 则此application::onCreate 是被service 调用的,直接返回
    7     return;
    8 }                     

    这个加入后会使得initial()方法返回false ,注册时抛出: 注册失败:AppKey is not set  的异常信息。具体为什么可以参考以下博客,在此感谢博主分享

    http://blog.csdn.net/gly742279097/article/details/43446973

                 

  • 相关阅读:
    Tapestry AppModule中的方法
    Tapestry Grid
    Tapestry5之AutoLoading Module
    Tapestry Submits
    Tapestry SubmitLink
    再读Struts2之一:总括
    Java war包取之外的properties文件
    用ORACLE的高级复制实现内外网数据同步【转】
    在Oracle中实现数据库的复制
    解决ORA12560: TNS: 协议适配器错误
  • 原文地址:https://www.cnblogs.com/epmouse/p/5360607.html
Copyright © 2011-2022 走看看