【日常吐槽 · 第六期】安卓模拟器充当真机调试 By EOS.

最近一直在瞎搞、东西比较碎,不过主要是在研究 脚本批处理之类的,想着各种一键式操作。
而用模拟器来充当真机调试也是其中的一个环节,因为有涉及打安卓包到真机调试。
但是我又不想用手机来调,一是电脑一会手机晃的眼晕、二是一直运行游戏的,手机发热比较厉害。
另外还有一个好处,下载资源直接变成了拷贝,省去了下载的时间,调试起来快上不少。


起初

本来我是用模拟器下载下来,玩游戏的=、=,然而我发现并不好使用。然后准备卸载。
不过用来挂机还不错、省手机(发热损电池、还容易黄屏),然而还不如直接玩端游,
然而又没时间玩端游,所以还是学习吧~沉迷学习不要自拔。然后就卸载掉了。。。。

过了没多久又要真机调试、然后又把它下载回来了。。。正所谓事事难料。
然后开始研究用模拟器来调试 apk包,效果还不错~

至于eclipse 和 安卓studio带的模拟器,大而慢,辩而日,笑而不语。


mumu模拟器

起初我是用的 逍遥模拟器,感觉还不错,但是后来网易出了个mumu模拟器,
下载下来看了看,确实还不错。还有mac版的,作为客户端端,最喜欢的就是跨平台的。
因为不同的软件难免有不同的操作和快捷键、如果跨平台就减少了不少成本去熟悉两套东西,
用起来自己也舒服。毕竟mac和windows系统的快捷键,就让我们已经很混乱了。
(ps:重命名~我回车,啪! 我擦,怎么进去了。 ctl+w,点点点,怎么关不掉。。。)

下载下来mumu模拟器,第一个感觉就是干净。符合我的标准,我喜欢。
…..然后把逍遥模拟器,卸载了~就是这么无情。

然而鸡贼的网易,用adb devices的时候是看不到模拟器的。(mac 重启下adb,是可以看到的)
然后打开进程管理器。看到NemuHeadless.exe,大概率就是他了,查看下他连接的端口号

//tasklist | findstr xx  也可以看pid,就不用打开界面了netstat -no | findstr 1184(PID) //查看pid占用的端口

发现是占用的22471, 然后

adb connect 127.0.0.1:22471
adb devices

本以为稳得很,然而却没有找到设备,哦买发克,于是我就去网上搜了搜,
结果搜到了mumu的论坛,也有人问同样的问题,结果工作人员竟然是私密回复的!!!
哦买发发发发克!!,靠人不如靠自己,“于是我就注册了一个号,问了同样的问题”吗?
怎么可能~ 于是我用nodepad++ 指定mumu的路径 开始全局搜素 22471。

果不其然,让我搜到了一个配置文件, myandrovm_vbox86.nemu 。
然后默默的搜了一波 adb,就一个字 “这波稳~”!

然后再重复一下 connect 7555, devices 果然可以看到模拟器了~唔哈~

本来想存一份,初始的安装包,怕以后越做越大,加广告啊什么的,历史总会惊人的想死。
然而一看是个下载器。。。网易果然鸡贼,古人诚不欺我。。。


adb 命令

1、先说下重新打包和安装,因为比较是从打包开始的嘛

system('打包命令')
//包出来了、清下包资源
system('adb shell pm clear com.games.es')
//卸载包
system('adb uninstall com.games.es')
//重新重新安装
system('adb install .\bin\debug\android\es-game-debug.apk')
//启动应用
system('adb shell am start com.games.es/org.cocos2dx.cpp.AppActivity')

2、再说说更新资源

因为一般都是用脚本语言,所以不改动c++代码的逻辑部分,直接把脚本和资源直接压到
一个目录,然后加上搜索路径就可以了。

//删除旧的
system('adb shell rm -rf /sdcard/es/')
//压入新的
system('adb push _tmp/ /sdcard/es/')
//把临时文件删掉。建议先拷贝一份再进行操作,永远不要动源文件,不然你会后悔的。。
system('rm -r _tmp/')

附加一段lua脚本的代码示例

if not InSDCard and cc.FileUtils:getInstance():isFileExist("/sdcard/es/src/main.luac") thenInSDCard = truepackage.loaded["main"] = nilcc.FileUtils:getInstance():purgeCachedEntries() //这样只有sdcard路径下有资源的时候才会添加,减少正常情况下对搜索路径的遍历 //虽然影响微乎其微,但是还是要有好的习惯cc.FileUtils:getInstance():addSearchPath("/sdcard/es/res", true)cc.FileUtils:getInstance():addSearchPath("/sdcard/es/src", true)return require "main"
end

3、其他常用adb命令

adb kill-server //看也知道是关闭adb
adb start-server  //看也知道是开启adb,不过一般都直接 adb devices就自己开启了adb install/uninstall //上边提到了
adb push/pull //上边提到了 存到手机上和从手机上拷贝出来
adb shell //这个就厉害了 shell 的基本命令都能用
//比如搜个文件(不支持中文就比较尴尬了)$>adb shell $>find -name "*.luac" | grep "data"$>exit

//还有两个命令
adb shell pm [package manager]  //包管理
adb shell am [activity manager] //活动管理。比较复杂,可以启动/关闭应用、进行广播等

结语

————完!

(ps:注视1分钟,你将不认识这个字)
(pps:如果你真的不认识了,可以搜索“可能这就是命吧”后边的这个词 “完形崩溃”)

See Again~

【日常吐槽 · 第六期】安卓模拟器充当真机调试相关推荐

  1. uni app使用雷电模拟器进行真机调试

    之前我用uni app真机调试时都是连接的自己的手机,每次都插根数据线,感觉不是很喜欢.今天又用真机调试想起来手机模拟器,就下了一个雷电.然后把配置真机调试的步骤分享出来吧. 一.安装手机模拟器 在这 ...

  2. python执行命令不连接mumu_Appium连接mumu安卓模拟器(真机)自动化测试

    1.安装node.js & Appium 1.2. tar -xvzf xxx.tar.gz 1.3. set classpath 1.4. `npm install appium 遇翻墙np ...

  3. Unity安卓应用闪退-使用DDMS工具查看安卓日志/ADB真机调试

    前言 最近遇到一个应用闪退问题,在某些机型和mumu模拟器上会出现,而其他机型和模拟器都是正常的,从Unity代码层面并没有发现问题,只能利用安卓调试看看了 工具 首先需要的工具: DDMS:查看安卓 ...

  4. uni-app 在mac电脑连接安卓手机进行真机调试

    1.首先我们需要将电脑与手机连接起来,这里我使用的连接助手是:HandShaker:手机和电脑都下载HandShaker,并且使用数据线将二者连接起来 2.我的手机是小米8,找到开发者选项,初次需要激 ...

  5. uniapp | 安卓手机无线真机调试教程

    从 Android 11 开始USB调试新增了无线调试功能,需要搭配 adb 30.0.0 及以上版本使用,请确认你的系统和adb是否符合要求. adb 最新版本下载入口: SDK Platform ...

  6. 【日常吐槽 · 第八期】adb偶遇fooView

    [日常吐槽 · 第八期]adb偶遇fooView By EOS. 很酷的一个软件 周五发现了一个叫fooView的软件,感觉很是新奇,鼓捣了一下,感觉还不错, 因为我的手机是带底部虚拟导航栏的,所以感 ...

  7. 【日常吐槽 · 第五期】说说近况

    [日常吐槽 · 第五期]说说近况 By EOS. 最近沦为加班狗,完全没时间写博客,一句国庆后要出版本,轻描淡写的进入996模式. 我的公司有一个特征,那就是乱,乱七八糟,这个乱不是指环境不好,而是工 ...

  8. Android判断模拟器还是真机的方法

    作为一个App,我们在做推广的同时,肯定会担心刷量的问题.一般常见的刷量手段就是通过安卓模拟器进行刷量. 那就会想到,怎么判断一个设备是模拟器还是真机. 先吐槽一下,百度上搜出来的都是什么垃圾答案.各 ...

  9. Android 判断模拟器还是真机的方法

    作为一个App,我们在做推广的同时,肯定会担心刷量的问题.一般常见的刷量手段就是通过安卓模拟器进行刷量. 那就会想到,怎么判断一个设备是模拟器还是真机. 先吐槽一下,百度上搜出来的都是什么垃圾答案.各 ...

最新文章

  1. 五分钟让你了解 Java方法(或者叫函数)
  2. 你的gpu驱动程序不满足_英特尔图形驱动程序现在在Windows/Linux之间共享约60%的代码库...
  3. java按时间范围过滤_在Java中,如何仅选择或过滤在特定时间段内创建的文件
  4. C#LeetCode刷题-递归
  5. 题解 POJ 2559-SP1805 【HISTOGRA - Largest Rectangle in a Histogram】
  6. Vim 命令常用功能详解
  7. jvm 初始化之 cinit , init
  8. 注意sizeof()返回的数无符号数,有符号数遇到无符号数时变成无符号数
  9. android的线程安全
  10. TypeError: Object of type ‘int64‘ is not JSON serializable
  11. python中fg是什么意思_Python fg
  12. dism 分割镜像_(图文教程)利用DISM++工具整合驱动和预补丁至win7镜像
  13. EDEM - Fluent - CFD风道耦合
  14. PHP与西门子PLC,西门子PLC“与”指令
  15. 材料力学:使用matlab绘制铰支梁在多个集中力、集中力偶矩作用下的挠曲线
  16. 高性能PC机与服务器的真正区别
  17. HTTP取消SSL认证
  18. centos镜像下载教程
  19. Python3 利用Virustotal API 获取json格式的分析报告
  20. 简单ELT ( 内含系统计算器)

热门文章

  1. 无法启动Parallels Desktop,因为Mac操作系统中缺少某些必需的组件
  2. 坦克世界进不去服务器未响应,坦克世界闪退([随便谈谈] 坦克世界未响应闪退问题讨论帖。楼主已经找到原因(大概)。)...
  3. excel表格中的底纹设置
  4. PostgreSQL 实时高效搜索 - 全文检索、模糊查询、正则查询、相似查询、ADHOC查询...
  5. 数据库启动后报12514错误
  6. 打印问题,需求是跳转到打印页面时直接弹出浏览器打印模式弹窗,当用户点击打印或取消打印时再关掉该打印页面并且返回到目标窗口源(父)页面并重载页面数据
  7. 苹果home键在哪里设置_苹果屏幕上的home键在哪里设置出来
  8. 浅谈Java类和对象
  9. Python 网络编程学习笔记(二)——DNS 域名解析客户端程序设计
  10. 华为android系统手机图片,华为手机照片误删怎么恢复?这3个照片恢复技巧,安卓手机都能用...