javah使用

生成头文件

javah  -encoding UTF-8  -classpath  D:\Android\Sdk\platforms\android-28\android.jar;.   com.pozhu.aiguinative.PaintView

D:\Android\Sdk\platforms\android-28\android.jar;.根据自己的环境设置

adb使用

adb配置
D:\Android\Sdk\platform-tools #加到系统PATH变量

adb kill-server
adb devices #查看设备

#其他命令
#连接雷电模拟器

adb connect 127.0.0.1:5555
adb shell
# 多个模拟器用下面连接
adb devices #查看设备
adb -s emulator-5554 shell

不进入设备shell模式,则执行 :

adb -s emulator-5554  指令(如 adb -s emulator-5554 shell input keyevent 3)

如果只有一个模拟器和一个手机连着电脑; 可以用:

adb -e #来指明是操作模拟器(Emulator);
adb -d #来指明是操作设备(Device)

adb发送文件到手机上

adb push D:\anr\AsaPaint\pathInfokey_ae1e2205fac04cbab0231b8f72ff9417 /sdcard/AsaPaint
adb -s 设备号 push D:\anr\AsaPaint\pathInfokey_ae1e2205fac04cbab0231b8f72ff9417 /sdcard/AsaPaint

adb卸载安装系统软件

adb devicesset device_name=HA1L1SLG      #上一步获取的设备名adb -s  %device_name%  root
adb -s  %device_name% remount
adb -s  %device_name% reboot        #挂载成功后,需要重启设备
adb -s  %device_name% root
adb -s  %device_name% remountadb -s  %device_name% shell
rm product/priv-app/InstantMemo/*
exitadb -s  %device_name% uninstall com.lenovo.styluspenadb -s  %device_name% push  安装包路径.apk  product/priv-app/InstantMemoadb -s  %device_name% shell
sync
reboot

#ndk日志,系统日志

打开命令行, 在命令行输入: adb logcat . 就可以看到满屏幕的日志啦.

输入 adb logcat --help 可以看到 logcat 的用法提示.

这里有两个参数特别提醒一下, 比较常用:

  1. -v XXXX : 用来选择log输出样式, 一般建议 threadtime , 更加详细.

  2. -d : 让log一次性输出后马上完毕. 如果没有此命令, logcat 工具会一直输出, 即使更新在界面上.

先清空日志

adb -s AHPEBB1813000561  logcat -c

如果需要保存log到文件, 方便以后查看. 可输入命令:

adb -s emulator-5554  logcat -v threadtime  > log.txt

按TAG号提取日志

adb -s AHPEBB1813000561  logcat -v raw -s DrawUnitDebug:E  threadtime > log.txt

adb查看ndk调试日志

adb logcat | ndk-stack -sym D:\AndroidStudioProjects\AiGuiNative\app\build\intermediates\cmake\debug\obj\arm64-v8a

或者:

adb logcat > crash.log
ndk-stack -sym D:\AndroidStudioProjects\AiGuiNative\app\build\intermediates\cmake\debug\obj\arm64-v8a -dump crash.log

ndk-stack相对于SDK的位置如下

D:\Android\Sdk\ndk\21.4.7075529\prebuilt\windows-x86_64\bin\ndk-stack

-sym 指定包含符号表的so文件位置。如果程序包含多种CPU架构,需要根据手机的CPU类型,来选择不同的CPU架构目录
我本机没加ndk-stack环境变量,所以整合命令:

adb -s emulator-5554  logcat -v threadtime | D:\Android\Sdk\ndk\21.4.7075529\prebuilt\windows-x86_64\bin\ndk-stack -sym D:\AndroidStudioProjects\AiGuiNative\app\build\intermediates\cmake\debug\obj\arm64-v8a

android-ndk-r16b:

adb -s emulator-5554  logcat -v threadtime | D:\Android\android-ndk-r16b\prebuilt\windows-x86_64\bin\ndk-stack -sym D:\AndroidStudioProjects\AiGuiNative\app\build\intermediates\cmake\debug\obj\arm64-v8a

android-ndk-r21b:

adb -s emulator-5554  logcat -v threadtime | D:\Android\android-ndk-r21b\prebuilt\windows-x86_64\bin\ndk-stack -sym D:\AndroidStudioProjects\AiGuiNative\app\build\intermediates\cmake\debug\obj\arm64-v8a

结果

使用aarch64-linux-android-addr2line

D:\Android\android-ndk-r16b\toolchains\aarch64-linux-android-4.9\prebuilt\windows-x86_64\bin\aarch64-linux-android-addr2line -e D:\AndroidStudioProjects\AiGuiNative\app\build\intermediates\cmake\debug\obj\arm64-v8a\libAiGuiNative.so  0000000000000c6a 000000000221c5bc

0000000000000c6a 000000000221c5bc 为出错位置,以“#两位数字 pc”开头的都是backtrace日志,详细参考:
https://blog.csdn.net/xyang81/article/details/42319789

Android开发 javah,adb使用相关推荐

  1. android 开发使用adb操作sqlite

    android 开发使用adb操作sqlite. 1.启动模拟器或连接android实体机 2.在命令行输入:adb shell 3.进入目录:data/data/应用程序包名/databases/ ...

  2. Android 开发常用ADB命令集合

    Android开发常用ADB命令: 1. 安装apk adb install -r apk路径(注:-r表示覆盖) 2. 启动应用 adb shell am start -n package_name ...

  3. Android开发:ADB真机调试方法

    Android开发:ADB调试 ADB调试分有线和无线,无线又分是否在同一局域网,建议使用无线和不在同一局域网的连接方法,简单方便 1.有线 在有usb线的情况下,连接笔记本和要调试的真机设备 打开手 ...

  4. Android开发工具——ADB(Android Debug Bridge) 一概览

    Android Debug Bridge (adb) 是一个android开发人员必会的多功能的调试工具,确实它的名字一样,它在开发者和目标机器之间,架起了一座bridge. adb的用法很简单,只要 ...

  5. Android开发中adb命令的常用方法

    Android的SDK中提供了很多有用的工具,在开发过程中如果能熟练使用这些工具,会让我们的开发事半功倍.adb是SDK提供的一个常用的命令行工具,全称为Android Debug Bridge,用于 ...

  6. Android开发、adb、monkey测试

    一. 手机测试概念 传统手机测试 VS 手机应用软件测试 传统手机测试:指测试手机本身比如抗压,抗摔,抗疲劳,抗低温高温等.也包括手机本身功能.性能等测试. 手机应用软件测试 C/S Client/S ...

  7. 【转】Android开发中adb启动失败adb连接异常的解决办法 offline

    原文网址:http://www.cnblogs.com/yejiurui/p/4173521.html 一.情况描述: 我们在使用eclipse开发有时候会出现adb连接异常中,有时候控制台会打印出来 ...

  8. Android开发工具——ADB(Android Debug Bridge) 三DalvikVM之jdwp线程

    jdwp(java debug wire protocol)是dalvik VM的一个线程,可以建立在adb或者tcp基础上,与DDMS或debugger进行通信. 代码位置 dalvik/vm/jd ...

  9. 【Android 应用开发】Android开发 使用 adb logcat 显示 Android 日志

    作者 : 万境绝尘  转载请著名出处 eclipse 自带的 LogCat 工具太垃圾了, 开始用 adb logcat 在终端查看日志; 1. 解析 adb logcat 的帮助信息 在命令行中输入 ...

最新文章

  1. LiveVideoStackCon 2020 首届音视频线上峰会【优秀出品人与讲师】
  2. ssl1010-方格取数
  3. osgi java_使普通的旧Java OSGi兼容
  4. ps怎么对比原图快捷键_PS教程:P图前后,你还能认出这是同一个人吗?
  5. 踩内存是什么意思啊_abs防抱死制动系统是什么意思?
  6. 计算机视觉论文-2021-07-07
  7. python面向对象的特殊方法和单例模式
  8. readline,readlines,read函数
  9. 73. 文件上传(2)
  10. 1、NoSQL数据库简介
  11. java-设置电脑音量
  12. 一文搞懂R(相关系数)与R^2(决定系数)
  13. Linux shell脚本检测jar包,挂掉时自动重启服务
  14. 获取当天晚上12点的时间戳
  15. CSDN日报20170217——《辞职信:写给我的“藤野先生”》
  16. GitHub--logparser(日志解析器)
  17. DOS攻击、DDOS攻击到底是啥
  18. B. Ordinary Numbers
  19. python预测糖尿病_实战 | 糖尿病预测项目
  20. [深度学习][原创]使用labelImg+yolov5完成所有slowfast时空动作检测项目-训练测试篇

热门文章

  1. 【通知】《算法设计与分析》实验课、理论课补课、考试时间、加分等安排 及 个人目标设定
  2. 分离立体声音的软件叫什么?这篇文章告诉你
  3. 新乡学院计算机实验室,公共计算机实验室简介
  4. Pythonxy下载链接
  5. ORA-00942错误
  6. 安琪拉教鲁班学算法之BFS和DFS
  7. plsql批量注释快捷键_PLSQL常用配置之窗口/版面保存、SQL格式化/美化、SQL注释\去掉注释等快捷键配置、登陆历史修改配置...
  8. java jcf框架干啥的_Java集合框架体系JCF
  9. 【Python函数式编程】——偏函数(Partial function)
  10. 如何去除移动磁盘写保护?