unity-Profiler调试Android的正确姿势

    xiaoxiao2021-04-13  28


    title: unity-Profiler调试 Android 、ios 的正确姿势 categories: Unity3d tags: [android, unity, 调试, profiler] date: 2017-04-13 18:58:18 comments: false

    使用 unity 自带的 Profiler 调试 打出来的 Android 、ios 包 Android 使用 夜神模拟器 作为安卓设备,当然你也可以用真机

    ios 使用真机


    Android 平台

    1. 前置条件

    安卓的相关环境 java、ant、sdk、ndk 什么的都装好(其实这里只需要 sdk 里面的 adb),配好 adb 工具的环境变量(意思就是 cmd 里直接输 adb 命令即可)

    打包 Android 包是,勾选 如下几个选项

    Developmemnt BuildAutoconnect ProfilerScript Debugging


    2. 步骤

    unity编辑器设置为 Android 平台,如上图所示(这里被坑了有点久,一直在 PC平台 上写代码,忘了设置这个导致一直连不上 Profiler) File -> Build settings -> Switch Platform(Android)

    运行游戏

    adb 调试设备

    (这里使用 夜神模拟器,所以需要使用 命令连接端口,真机的话需要安装对应的驱动,并打开 Android设备的 调试模式) adb连接模拟器: adb connect 127.0.0.1:62001连接unity和游戏:adb forward tcp:54999 localabstract:Unity-com.xxxx.yyy,com.xxxx.yyy 为游戏的包名,也就是 Bundle Identifier 下面是py偷懒脚本,双击一下就好了,相关命令也在里面#!/usr/bin/env python import os import sys Cmd_kill = "adb kill-server" Cmd_start = "adb start-server" Cmd_connect = "adb connect 127.0.0.1:62001" Cmd_devices = "adb devices" Cmd_profiler = "adb forward tcp:54999 localabstract:Unity-com.xxxx.yyy" def conn2Nox(): os.system(Cmd_kill) os.system(Cmd_start) os.system(Cmd_connect) os.system(Cmd_devices) os.system(Cmd_profiler) os.system("pause") pass def main(): conn2Nox() pass if __name__ == "__main__": main()

    unity编辑器打开Profiler, Windows -> Profiler(ctrl + 7)

    Active Profiler -> AndroidPlayer(ADB@127.0.0.1:54999)


    3. 顺便看看数据

    看这个 SerializedFile,其实就是 AssetBundle 的序列化文件在内存的占用,当前有 107 个AB, 107 * 512 也超不多就是 50m+ 了

    常见问题

    Q: 连不上夜神模拟器?

    现在(20180523)链接使用输入ip 127.0.0.1 才能链接


    IOS 平台

    相比 Android 简单很多

    1. 前置条件

    mac 操作系统环境(打包及profile都在该环境下)

    勾选以下选项 及 debug 模式

    Symlink Unity libraries 可以不勾选

    2. 打包

    直接打出包就可以链接profile调试

    转载请注明原文地址: https://ju.6miu.com/read-669157.html

    最新回复(0)