0

我一直在尝试使用SVN Kit从 Android 应用程序访问 SVN 存储库。
我们的项目应该检查文件的更改并在它们发生更改时下载它们,但如果需要,仍然能够回滚到以前的版本。

我建立了一个常规的 Java 项目,并且使用 SVN Kit 没有问题,我登录到 SVN 服务器并检索了存储在那里的文件列表。

但是,当我试图从一个 Android 项目中做到这一点时,一切都乱了套。虚拟机用完了堆空间,只是试图构建它,而 Eclipse 因“超出 GC 开销限制”之类的评论而陷入火海。

我的印象是,这是由于 Android 使用了不同类型的虚拟机,而 SVNKit jar 是为不同类型的 VM 编译的。

这个家伙声称已经让它工作了,看起来像是旧版本的 Android。

现在我建议我们使用某种 ftp 服务器方法,上传文件的新版本,可能包含包含版本信息的单独文件,但我必须探索这条路径,然后才能将其作为死胡同写下来,或者至少建议那给我老板!

任何帮助或建议将不胜感激。

4

2 回答 2

0

我的回答可能与 SVNKit 没有直接关系,但实际上会尝试解决原始问题。

据我了解您的用例,如果文件已更改并尝试使用 SVN 通过其更新命令执行此操作,您希望下载文件。我宁愿创建一个简单的 Web 服务,它应该返回带有校验和或 md5Hash 的文件列表。现在我假设服务器上只存在相关文件。收到哈希后,您可以将它们与设备上的哈希进行比较,并根据任何差异决定更新。这种方法也适用于回滚,因为您只需用旧文件替换服务器上的文件,这将被视为新文件。

就堆溢出和内存不足而言,它们主要是因为10MB左右的堆空间有限。

于 2012-04-03T04:56:17.707 回答
0

我创建了一个基于 SVNKit 的 SVN 客户端,它可以在这里免费获得:https: //play.google.com/store/apps/details? id=com.valleytg.oasvnlite.android

我不确定这是否适合您的目的,或者您必须自己构建。如果您正在寻找自己的构建,svnkit 将无法直接在 android 平台上运行。SVNkit 使用的一些库在 Android 平台上不可用。

于 2013-02-24T18:20:56.483 回答