Unity-Android调试指南

1 缘起

最近实验室在基于unity平台开发一款应用,需要有Windows端和Android端两个版本。之前的常态是集中开发Windows端,在Windows上调试通过后直接build一个Android版本的apk文件,下载到办公室仅有的几步安卓手机上测试运行。这存在着以下几个问题:

  • 开发效率低。每次build出来的包都有四五百兆大小,往手机端的传输就需要很久。
  • 系统版本单一。众所周知,年轻人的手机通常都运行最新的Android系统,这样就导致在测试时只能测试Android9.0的系统,可能出现潜在bug找不到的情况。
  • 无法调试,这也是本次文章的重点。

我们的需求是,点击按钮,调用系统默认的应用打开本地pdf文件。在Windows端一切正常,而打包到Android端之后,怎么点击按钮都没有反应。由于打开文件的函数中存在多个步骤,Android端无法调试导致了不能准确定位问题所在。

2 解决方案

2.1 前期准备

  1. unity,软件版本较新即可,当时使用的版本是2018.2.9f1;教程使用的版本是2019.1.11f1。
  2. Visual Studio 2019 Community,需要下载相应版本的vstu(visual studio tools for unity),以及安卓模拟器。

2.2 核心思路

  1. 使用软件提供的安卓模拟器连接unity编辑器,实现unity打包之后自动部署到安卓模拟器。
  2. 使用Visual Studio连接安卓模拟器进程,实现断点调试。

2.3 详细过程

2.3.1 配置visual studio

  1. 点击vs2019软件界面状态栏的“工具——获取工具和功能”,选择使用“unity的游戏开发”以及“使用.NET的移动开发”。


  2. 安装完组件之后,再次打开vs,点击状态栏的“工具——Android——Android SDK管理器”,根据自己的需求安装相应的SDK。


  3. 点击状态栏的“工具——Android——Android Device Manager”,新建一个对应api的安卓模拟器。


  4. 初次使用时VS会要求你安装Android Emulator工具,同意即可。安装完成后,点击启动Android Emulator工具,成功后显示如图。


2.3.2 连接模拟器与unity

  1. 在unity中打开“Edit——Preference——External Tools”,配置Android环境的路径。
    PS:2018版本需要自行上网下载安装,2019版本在使用unity hub安装时可以直接配置上。
  2. 打开“File——Build Settings”,切换到Android平台,Run Device选项选择出现的的Google Android SDK build (emulator 5554)。完成此步操作后,每次需要调试时直接点击“File——Build and Run(Ctrl+B)”就可以快速build并自动在安卓模拟器中运行了。


  3. 更多build app的选项在窗口左下角的“Player Settings”选项中设置,其中包括设置app的目标系统版本以及系统的cpu架构。

2.3.3 配置vs的debug功能

  1. 同样点击unity软件中的“File——Build Settings”,选中下图中的三项。


  2. 按下Ctrl+B可以快速build并自动部署到安卓模拟器中运行。
  3. 在vs软件中需要的代码行打上断点,并点击状态栏的“调试——附加unity调试程序”,正常情况下弹出的窗口中会显示出模拟器的选项,选中并确定即可进行调试了。


2.4 其他

  1. 使用Android Studio主要是替换vs提供的SDK以及模拟器功能,这方面的内容可以自行上网了解,注意unity调试还是需要在vs中进行。
  2. 目前unity官方文档中还提到了unity remote的功能,好像是可以不用build,只需要在Android端安装一个unity remote的应用就可以实时调试,本人尚未测试,有兴趣的可以自行了解。

3 总结

unity官方建议的代码编辑器是vs,而自vs2017以来,这款宇宙第一IDE已经实现了模块化的安装,大大降低了硬盘空间需求,所以如果仅仅是开发unity-Android程序的话,还是建议大家使用vs,有什么需要的组件可以按需安装。

你可能感兴趣的:(Unity-Android调试指南)