从Android Studio调试器导出对象
是否有一种方法可以从Android Studio(IntelliJ IDEA)调试器导出对象。例如,VisualStudio从Android Studio调试器导出对象,android,debugging,intellij-idea,android-studio,code-generation,Android,Debugging,Intellij Idea,Android Studio,Code Generation,是否有一种方法可以从Android Studio(IntelliJ IDEA)调试器导出对象。例如,VisualStudio 最后,我需要创建/生成使用基于服务器响应的值初始化的对象。因此,实现这一目标的任何其他解决方案都是受欢迎的。这可能比您想要的更麻烦,但以下方法确实有效: 如@Donn_Felker所述,创建自定义数据类型呈现器。假设类路径上有一个类可以将对象序列化为JSON(或您感兴趣的其他格式),请在数据类型呈现器中使用该对象生成包含序列化数据的字符串 在我的例子中,我有一个项目名为G
最后,我需要创建/生成使用基于服务器响应的值初始化的对象。因此,实现这一目标的任何其他解决方案都是受欢迎的。这可能比您想要的更麻烦,但以下方法确实有效: 如@Donn_Felker所述,创建自定义数据类型呈现器。假设类路径上有一个类可以将对象序列化为JSON(或您感兴趣的其他格式),请在数据类型呈现器中使用该对象生成包含序列化数据的字符串 在我的例子中,我有一个项目名为GsonProvider的类,它本质上是Google的GSON的工厂类。我在数据类型渲染器中使用的表达式是:
com.example.GsonProvider.getGson().toJson(this)
类名需要完全限定
如果您可以在“呈现”已检查的节点时使用此选项,那就太好了,但不幸的是,虽然您可以在那里看到序列化的值,但似乎没有任何方法可以将其复制到剪贴板或以任何方式导出
因此,将表达式添加到“展开节点时”部分。通过选择“使用表达式列表”,然后添加一个名为“json”的表达式和一个值com.example.GsonProvider.getGson().toJson(this)
我使用名称“json”保存自定义渲染器
有了它,您可以在“variables”或“watches”窗口中右键单击一个变量,然后选择“View As”-->json,您将看到它是一个json字符串。右键单击它,然后选择“复制数据”。这将把json字符串复制到剪贴板。以下是如何将名为
output
的变量导出到剪贴板:
- 添加断点并在调试模式下执行代码
- 点击断点时,选择对象并单击上下文菜单中的“计算表达式”
- 在表达式字段中编写一个表达式,将对象转换为
,例如,如果您的项目可以访问字符串
:Gson
new GsonBuilder().create().toJson(output)
- 在结果的关联菜单中,选择“复制值”