2017-04-14 47 views
0

Xamarin Docs有JavaOptions打包属性。它的描述是“在构建.dex文件时指定传递给java的附加命令行选项”。但是没有任何例子。这些参数可以通过什么形式传递?另外JavaOptions可以通过android项目选项下的“Additional Java Options”来配置。但是,再次没有任何例子。它不接受诸如“无优化”,“无优化”等选项。那么,它接受什么样的格式呢?可以在高级android构建设置中指定哪些其他java选项?

回答

1

当Xamarin具有在Xamarin.Android MSBuild的进程来启动一个Java程序,即

  • Proguard的
  • JarToXml
  • CompileToDalvik
  • ...

它会把那些额外的cmd行参数为java,最常用的选项是堆的大小有约束力的项目中或在Proguard执行中使用的Java程序等。

-Xmx<size>  set maximum Java heap size 

注:增加Java堆大小就足够了Xamarin提供一个单独的大小选项常见,您输入的值前缀-Xmx并通过作为Java cmd行选项。

回复:https://github.com/xamarin/xamarin-android/search?q=JavaOptions&type=

从壳型java -helpjava -X,...查看可用的Java进程的各种选项。

+0

所以,看起来我错了,JavaOptions无法关闭dx优化。有没有办法做到这一点? – ichernob

+0

@ichernob您需要修改MsBuild任务'Xamarin.Android.Tasks.Dx'来传递其他选项。我可以问为什么。你试图跳过dex优化? – SushiHangover

+0

当调试代码的工作速度比发布代码快大约2-3倍时,我遇到了问题。检测到的代码部分不包含任何DEBUG符号。此外,我试图看看jit优化代码的发布版本,但我的尝试是不成功的。反汇编窗口仅表示无法加载程序集。所以,我唯一的建议是有一些代码优化会带来性能回归。 – ichernob

相关问题