-
Android第三方JAR包,系统架构问题5
背景:
原来有一个Web项目,其中有一些Bean包含了很多注解(JPA等)和其它一些与WEB项目依赖的东西
现在要弄一个Android端,于是想把这些Bean之类的东西放到一个公共工程打包使用
现状:
打包之后在WEB工程中没什么问题
到Android工程中就有问题了:由于Bean依赖了很多东西,于是又要把相关的JAR也拷过去,造成了Android应用无法启动):
Unable to execute dex: GC overhead limit exceeded
GC overhead limit exceeded
问题:
1.上面这个问题有办法解决吗
2.基于以上状况,觉得这样架构对Android端不太合适,放入了一大堆无用的JAR,
初步想法:
a)不做共用,各自写各自的,这样就要维护两个版本
b)公共库放入纯净的Bean,两端根据需要进行继承并加入各自依赖,
这样就要维护三个版本,另外这样的继承又好像不太可行,
property与get、set方法不知道该怎么规划
不知道大家是怎么进行架构规划的
2012年12月20日 11:02
2个答案 按时间排序 按投票排序
-
如果是单纯的entity类的话,打成Jar是没问题的,如果说entity又依赖于其他jar的话,打包就比较麻烦,不过可以用ant打包把依赖jar打包上
另外我不建议把entity打成jar,你直接把相应的entity类拷贝到android上,删除所有的注释即可,因为你服务器修改后,同样要打成jar,替换之前的jar,同样也麻烦,而且客户端也不能修改jar2013年1月04日 10:47
-
尽量使用Java内置的模块实现功能,比如说xml的解析,可能为了方便web端可以使用dom4j,但为了减轻android端的压力,可用sax或dom解析
2012年12月20日 17:08
相关推荐
这些第三方库通常是以jar包的形式提供的。本文将详细介绍如何正确地将jar包导入Android项目中,并确保它们能被正确打包进最终的apk文件。 #### 导入jar包的基本步骤 1. **下载jar包**:首先需要从可靠的源下载所需...
在Android开发中,将Activity打成jar包供第三方调用是一种常见的需求,尤其在需要保持代码的封装性和可重用性时。然而,这一过程并非没有挑战,尤其是资源文件(如图片、布局、字符串资源)的处理。本文将详细介绍...
总的来说,引入并使用百度地图jar包是一个涉及Android项目构建、第三方库管理、本地库处理等多个方面的过程。通过正确地引入和配置,我们可以轻松地在Android应用中集成百度地图,从而提供地图展示、定位、导航等...
在Android应用开发中,使用第三方服务,如百度地图,能够为用户提供丰富的地图功能,包括定位、导航、路线规划等。为了在Android应用中集成百度地图API,开发者需要引入特定的jar包和so(共享对象)文件。下面我们将...
- Android SDK本身并不包含专门处理JSON的库,因此需要第三方库,如“json jar包”。 3. 使用json jar包解析和生成JSON: - 一个常见的json jar包是org.json,它提供了一系列的类和方法来解析JSON字符串到Java...
2. **DEX文件处理**:使用 DexClassLoader 或其他第三方库(如dexlib2、smali/baksmali)来反编译DEX文件,转化为可读的Java源代码。 3. **资源提取**:访问res/目录,提取图片、XML布局文件、字符串资源等。 4. *...
由于存在缺失的jar包,开发者将面临查找和集成第三方库的挑战,同时也需要具备一定的Android Studio使用经验,以便于编译、调试和运行项目。对于初学者而言,这是一个不错的学习资源,通过解决实际问题来提升技能。...
当接收到推送任务时,服务端会根据目标设备筛选出需要推送的消息,并通过第三方推送通道(如APNs for iOS、GCM/FCM for Android)将消息推送到目标设备。 4. **消息格式与协议**:源码会涉及如何封装和解析消息数据...
- 依赖库:可能包含已下载的第三方库的jar或aar文件 在实际开发中,这个项目可能会使用到Android Studio作为集成开发环境,采用MVVM(Model-View-ViewModel)架构模式进行开发,利用Retrofit或OkHttp处理网络请求,...
本插件适用于Android 7.0的手机无法输出logcat,以及无法查看文件目录,ADT-24.2.0采用第三方ADT,因为文件比较大,请自行下载。ddmlib.jar也可以在SDK文件目录下面搜索。
如果需要在Android应用中编码或处理WebP图片,就需要额外引入第三方库。 3. **SO库的作用** SO库(Shared Object),在Android中是动态链接库的后缀,通常包含了特定平台下的原生代码。在本资源中的WebP相关的SO库...
此外,尽管 EventBus 不再活跃开发,社区中可能存在第三方维护的分支或者类似的替代品,如 RxBus,它们可能提供了更多现代特性和改进。 总之,EventBus 是一个强大的 Android 组件通信工具,能够极大地简化应用程序...
"libstlport_shared"是STLport库的共享版本,STLport是一个实现C++标准模板库的第三方库,SQLCipher可能依赖于它来提供一些基本的数据结构和算法。 "armeabi-v7a"是一个CPU架构,表示这些库是针对支持ARMv7指令集的...
但是,通过一些第三方库和API,开发者可以实现这一功能。这里我们将详细探讨基于"android-serialport-api"项目的Android串口开发以及如何使用SO(共享对象)文件和构建包。 "android-serialport-api"是一个开源项目...
2. **不需导入额外库**:通常,Android应用在使用第三方库时需要添加依赖库的Gradle配置或者将库的jar包添加到项目的libs目录下。但这个Demo声称无需导入额外的库,这意味着它可能已经包含了SlidingMenu库的源代码...
这个“XMPP第三方资源导入包”显然包含了用于开发XMPP应用所需的类库和组件,使得开发者能够将其集成到自己的项目中,实现聊天、群聊、文件传输等实时通讯功能。 在导入XMPP第三方资源包之前,首先需要理解XMPP的...
1. **Android 数据库连接**:Android原生支持SQLite数据库,但对于需要连接远程SQL Server或其他非SQLite数据库的情况,开发者需要引入第三方库,如jdts.jar,它提供了对JDBC(Java Database Connectivity)的支持。...
本文将详细介绍如何在Android和iOS双平台上实现在React Native应用中集成第三方分享功能,例如QQ、QQ空间、微信、朋友圈、微博和Facebook。 首先,我们需要引入一个名为`react-native-share`的库,这是一个专门为...
src目录是源文件目录,gen目录是 ADT 自动生成的 JAVA 文件,assets目录是资源文件目录,bin目录是二进制文件目录,libs目录是第三方的 jar 文件目录,res目录是资源文件目录,包括drawable、layout、menu 和 values...
- **调试与修复**:当没有源代码但需要调试或修改第三方库时,反编译可以帮助理解其实现。 - **学习借鉴**:开发者可以通过反编译了解其他应用的技术实现,获取灵感。 - **安全分析**:安全研究人员通过反编译检查...