android使用mina需要注意的问题

1.第三方jar包的使用 
      如果在Java Build Path中使用Add External JARs这种方式,运行时会有找不到类的错误(我的上面有,如果你没出现,恭喜你),上网查了几种方式,我这边运行通过的方式如下: 
     在项目中建个lib文件夹,把需要的jar包复制进去,在   Java Build Path中使用  Add JARs ,选择项目下的lib包中的jar文件即可,发布apk文件时会自动打包进去。 
     网上还有一种方式,在  Java Build Path 中使用 Add Library, 选择 User Libaray -> 新建一个User Libaray的方式,这种我没试,有通过的同志们说下。 
    本人推荐项目建文件夹的方式。

2.  mina包的使用之日志 
     我使用的是mina2.0.2,如果没有特殊需求,使用mina-core-2.0.2核心包就可以了。 
     关键点在这里:模板
     mina中使用slf4j作为日志框架(不知道slf4j的同志们请google下), 这个只是一个日志框架,是没有实现的,你需要一个具体的实现,比如说log4j(具体使用方法我就不说了,很简单,实在不知道给我发站内信)。使用 mina必须把slf4j的jar包也引入,那么你也要引入一个实现日志的包,在普通客户端开发这个不是问题,但在android中,已经有了一个日志实 现,而且配合logcat,其功能是很强大的,那么怎么配合slf4j来使用呢?(ps:slf4j是必须的,mina要用到) 
   这里就要感谢网络了,我在slf4j的官网居然发现有一个slf4j-android的jar包 
http://www.slf4j.org/android/  同志们可以去看看,(强烈推荐去看看)下载这个包,引入到项目中,注意啊,这个包是不能和slf4j-api包共存的,我的解决方式是只使用slf4j- android这个包,其余的日志相关的包都删除,(其实别的日志包也没什么用,我们有android提供的日志类),这样mina就不会报日志类找不到 的错误了,而且日志都输出到logcat,调试程序也方便。这方面我们要感谢slf4j,如果没有这个实现,mina使用就麻烦了,我能想到的方式就只有 更改mina源代码,重新编译了,当然你也可以自己提供日志实现类。 http://www.huiyi8.com/moban/
    android的日志类中有一个限制,tag不能超过23个字符(你不知道tag,我也不知道该怎么说了...),slf4j也给解决了,官网上面有介绍。(再建议看下官网)

3.  mina包的使用之NioSocketConnector

在android2.1中好像没有问题,但在android2.2中会有Bad address family的异常,这个异常是由于IPv6引起的,这个bug已经在 http://code.google.com/p/android/issues/detail?id=9431  (同志们看看吧),android2.2不支持IPV6,在使用nio 时会有问题,有建议是使用io,可以解决,但我们如果一定要使用nio呢,解决方法如下:

设置系统属性: System.setProperty("java.net.preferIPv6Addresses", "false"); 就这一行解决问题,有同志可能要问,在哪加啊?系统开始的地方加,比如说是service,在onCreate()中启动mina前加上就 行,activity中也一样。

android使用mina需要注意的问题,布布扣,bubuko.com

时间: 2024-08-02 05:59:55

android使用mina需要注意的问题的相关文章

Android与Mina集成

简介 Apache MINA(Multipurpose Infrastructure 多功能框架 for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络应用程序提供了非常便利的框架.当前发行的 MINA 版本支持基于 Java NIO 技术的 TCP/UDP 应用程序开发.串口通讯程序,MINA 所支持的功能也在进一步的扩展中. Apache官方网站:http://mina.apache.org Android用jar包等资源 h

Android Mina框架的学习笔记

Apache MINA(Multipurpose Infrastructure for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络应用程序提供了非常便利的框架.当前发行的 MINA 版本支持基于 Java NIO 技术的 TCP/UDP 应用程序开发.串口通讯程序(只在最新的预览版中提供),MINA 所支持的功能也在进一步的扩展中.目前正在使用 MINA 的软件包括有:Apache Directory Project.Asyn

基于mina的的android即时通信app

前段时间研究mina框架,发现很适合做即时通信后台,经过几个月的研发本人开发了一套基于mina框架的android即时通信app,暂命名为E聊.鉴于本人能力有限还存在不少bug,希望大家原谅并指出,bug和部分功能还在不断完善中,过段时间部分代码会进行开源,敬请关注. 主要功能包括: 1.私聊,群聊 2.支持文字.语音.图片.文件.小视频等 3.位置共享(开发中) 4.朋友圈(图文发布.评论等,小视频功能正在开发中) 5.上线通知,断线重连 6.接收离线消息 7.更多功能正在筹划中... 演示图

基于Apache mina 的android 客户端tcp长连接实现

TCP-long-connection-based-on-Apache-mina 基于Apache mina 的tcp长连接实现,可用于android客户端推送. 项目Github地址:https://github.com/sddyljsx/Android-tcp-long-connection-based-on-Apache-mina 项目将Apache的mina项目移植到了android平台.实现长连接的主要思想是使用了mina的KeepAliveFilter过滤器. acceptor.ge

Mina框架的学习笔记——Android客户端的实现

Apache MINA(Multipurpose Infrastructure for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络应用程序提供了非常便利的框架.当前发行的 MINA 版本支持基于 Java NIO 技术的 TCP/UDP 应用程序开发.串口通讯程序(只在最新的预览版中提供),MINA 所支持的功能也在进一步的扩展中.目前正在使用 MINA 的软件包括有:Apache Directory Project.Asyn

使用Mina框架开发 QQ Android 客户端

Apache MINA是一个网络应用程序框架,用来帮助用户简单地开发高性能和高可靠性的网络应用程序.它提供了一个通过Java NIO在不同的传输例如TCP/IP和UDP/IP上抽象的事件驱动的异步API. Apache MINA 也称为: ● NIO 框架库 ● 客户端服务器框架库 ● 一个网络套接字库 MINA虽然简单但是仍然提供了全功能的网络应用程序框架: ● 为不同的传输类型提供了统一的API: ○ 通过Java NIO提供TCP/IP 和 UDP/IP支持 ○ 通过RXTX提供串口通讯(

MINA框架----------android客户端与服务器端

1.相关资源 MINA:http://mina.apache.org/mina-project/quick-start-guide.html jar包下载:http://download.csdn.net/detail/hulan_baby/8424891 源代码(客户端):http://download.csdn.net/detail/hulan_baby/8424897 源代码(服务器端):http://download.csdn.net/detail/hulan_baby/8424903

【喵"的Android之路】【开篇】序

[喵"的Android之路][开篇] [序] 本人Nodin,偶尔也叫MoNodin,朋友们都喜欢叫我丁,还有个笔名叫陌上幽人,文艺时叫恋风,发奋时叫不肯腐烂的土壤...也许你觉得我逗,其实25年来我从没长过青春痘——看来还太年轻,(唱起来)我的青春期它还没来到! 开个玩笑,言归正传. 2011年3月份开始试水Android手游,三个月后转而做应用层开发,目前在百度垂直搜索部图片团队担任客户端研发工程师.至今从事Android工作已经有三年时间,主要参与过五个项目的开发.其中三个是针对特定客户的

长连接神器Mina框架的使用

前段时间学习了mina框架的使用.它是基于Socket进行通信,所以说在项目中要是需要长连接的使用,那mina框架是一个不错的选择. 下面简单介绍一下mina框架的使用,学习mina框架不长时间,现在写下来即时为了记录一下自己的学习经历,又希望可以帮助其他初学者朋友,若有不足与错误之处,还请大神指教. 在使用mina框架之前需要下载所需的jar包.可以在我的网盘中下载,Android端也可以用的.地址:http://pan.baidu.com/s/1skP8YT3 ,提取码:inyl. 所需的j