android 開發中常用命令

1.反編譯

命令:apktool d <test.apk> -o?<folderdir>

其中:test.apk是待反編譯文件的路徑,folderdir是反編譯后的文件的存儲位置。

apktool d -f <test.apk> -o?<folderdir>

注意:如果dir已經存在,會提示報錯,此時加上參數-f會強行覆蓋dir。

舉例:apktool ? d /Users/admin/test.apk -o /Users/admin/Desktop/folderdir

2.編回apk 重新打包

apktool b /Users/admin/Desktop/folderdir

3.重新簽名,生成apk

jarsigner -verbose -keystore 你的簽名文件 -storepass 簽名文件密碼 -signedjar 簽名后的apk名稱 -digestalg SHA1 -sigalg MD5withRSA 待簽名的apk 簽名文件別名

jarsigner -verbose -keystore /Users/admin/Desktop/test.keystore -storepass test -signedjar /Users/admin/Desktop/folderdir/dist/1test.apk -digestalg SHA1 -sigalg MD5withRSA /Users/admin/Desktop/folderdir/dist/1019033_gtyxsjtest2_37_fanshenghao_1688031872bPeBJZETdV.apk test

4.命令輸入控制臺log(有時候 as 控制臺總是丟日志,用這個命令不會出現)

adb logcat ->/Users/admin/Desktop/jspanhskd.log

5.查看這個包名帶 jp 的進程

adb shell ps | grep jp

6.殺死手機某個進程

adb shell am force-stop packagename

例子:adb shell am force-stop com.pm.tcl

7.查看activity的調用棧信息

adb shell dumpsys activity | grep "topActivity"

8.查看Activity組件信息

adb shell dumpsys activity activities

9.查看Service組件信息

adb shell dumpsys activity services

10.查看ContentProvider組件信息

adb shell dumpsys activity providers

11.查看BraodcastReceiver信息

adb shell dumpsys activity broadcasts

12.查看Intent信息

adb shell dumpsys activity intents

13.查看進程信息

adb shell dumpsys activity processes

14.查看設備abi,海思芯片是32位還是64位

adb shell getprop ro.product.cpu.abi

15.輸出各階段發生的動畫與幀相關的信息

adb shell dumpsys gfxinfo <PackageName>

16.查看每個activity啟動耗時 在Android Studio Logcat中過濾關鍵字“Displayed

17.?應用的啟動時間

命令:?adb shell am start -W com.jo.cl/com.jo.cl.SplashActivity

ThisTime

表示最后一個Activity啟動耗時。

TotalTime

表示所有Activity啟動耗時。

WaitTime

表示AMS啟動Activity的總耗時。

一般來說,只需查看得到的TotalTime,即應用的啟動時間,其包括 創建進程 + Application初始化 + Activity初始化到界面顯示 的過程。

18.aab并不能直接安裝到手機,因為apk是唯一的安裝包格式,所以需要先將aab轉成apks,我們需要借助bundletool工具,bundletool的使用見官網???????https://developer.android.com/studio/command-line/bundletool

? a. 通過 brew?安裝bundletool? ?

? ? ?命令:brew install bundletool

? b. aab 生成 apks? ?

命令:bundletool build-apks --bundle=<test.aab>?--output=<test.apks>?--ks=<test.jks>?--ks-pass=pass:<密碼> --ks-key-alias=<別名>?--key-pass=pass:<密碼>

舉例:bundletool build-apks --bundle=/Users/admin/Downloads/test.aab -- output=/Users/admin/Desktop/test/wscq.apks --ks=/Users/Project/test.jks --ks-pass=pass:android --ks-key-alias=test --key-pass=pass:android

? ?c. ?安裝 apks 到手機

命令:?bundletool install-apks --apks trunk_release_signed.apks

19.獲取apk 簽名信息

命令:keytool -keystore <keystore文件> -list -v

舉例:keytool -keystore /Users/Project/test/keystore/test.keystore -list -v

20.獲取手機內apk包中的緩存文件

命令:adb pull <緩存文件路勁> <輸出路勁>

例子:adb pull /sdcard/android/data/com.pm.test/files/test_logs/Log_2023_08_04.log /Users/admin/Desktop

21.查看apk安裝目錄

命令:?adb shell pm path packagename

22.mac?查看 jdk 安裝路勁

命令: ?/usr/libexec/java_home -V

23. android studio?查看依賴樹

chmod +x gradlew

命令:?./gradlew :app:dependencies

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/36295.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/36295.shtml
英文地址,請注明出處:http://en.pswp.cn/news/36295.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

從零學算法34

34.給你一個按照非遞減順序排列的整數數組 nums&#xff0c;和一個目標值 target。請你找出給定目標值在數組中的開始位置和結束位置。 如果數組中不存在目標值 target&#xff0c;返回 [-1, -1]。 你必須設計并實現時間復雜度為 O(log n) 的算法解決此問題。 示例 1&#xff1…

React Native 在高IOS版本下無法顯示圖片的問題處理

圖片在低ios版本下可以看到圖片&#xff0c;在高版本ios下顯示不了圖片 直接上解決方法 找文件 /node_modules/react-native/Libraries/Image/RCTUIImageViewAnimated.m 修改源碼 原代碼 if (_currentFrame) {layer.contentsScale self.animatedImageScale;layer.contents…

php中nts和ts

PHP語言解析器:官方提供了2種類型的版本&#xff0c;線程安全(TS)版和非線程安全(NTS)版 TS: TS(Thread-Safety)即線程安全&#xff0c;多線程訪問時&#xff0c;采用了加鎖機制&#xff0c;當一個線程訪問該類的某個數據時進行數據加鎖保護&#xff0c;其他線程不能同時進行訪…

您的網站不應該只提供一套通用 API

后端應該提供兩套 API&#xff0c;一套是外部使用的通用 API&#xff0c;服務特定的數據&#xff0c;另一套是自家使用的應用 API&#xff0c;服務特定的頁面。 在當今的web開發中&#xff0c;構建一個提供JSON服務的后端和一個渲染應用程序的前端是很流行的。我不太喜歡&…

【Sklearn】基于決策樹算法的數據分類預測(Excel可直接替換數據)

【Sklearn】基于決策樹算法的數據分類預測&#xff08;Excel可直接替換數據&#xff09; 1.模型原理1.1 模型原理1.2 數學模型 2.模型參數3.文件結構4.Excel數據5.下載地址6.完整代碼7.運行結果 1.模型原理 決策樹是一種基于樹狀結構的分類和回歸模型&#xff0c;它通過一系列…

MySql(干貨)

寫這篇博客的目的不是為了將介紹原理&#xff0c;而是為了Sql中的代碼操作屬實太多了&#xff0c;在這里進行一個匯總&#xff0c;方便查閱&#xff01;&#xff01;&#xff01; Sql分類 分類全稱說明 DDL Data Definintion Language數據定義語言&#xff0c;用來定義數據庫對…

微信小程序(由淺到深)

文章目錄 一. 項目基本配置1. 項目組成2. 常見的配置文件解析3. app.json全局的五大配置4.單個頁面中的page配置5. App函數6.tabBar配置 二. 基本語法&#xff0c;事件&#xff0c;單位1. 語法2. 事件3. 單位 三. 數據響應式修改四 . 內置組件1. button2. image3. input4. 組件…

k8s常用資源管理 控制

目錄 Pod&#xff08;容器組&#xff09;&#xff1a;Pod是Kubernetes中最小的部署單元&#xff0c;可以包含一個或多個容器。Pod提供了一種邏輯上的封裝&#xff0c;使得容器可以一起共享網絡和存儲資源 1、創建一個pod 2、pod管理 pod操作 目錄 創建Pod會很慢 Pod&…

什么是事務,并發帶來的事務問題以及事務隔離級別(圖文詳解)

一、什么是事務&#xff1f; 簡單說就是邏輯上的一組操作&#xff0c;要么都執行&#xff0c;要么都不執行。 舉個例子&#xff0c;假如小明要給小紅轉賬100元&#xff0c;這個轉賬會涉及到兩個關鍵操作&#xff1a;①將小明的余額減少100元。 ②將小紅的余額增加100元 。但…

學習筆記整理-JS-04-流程控制語句

文章目錄 一、條件語句1. if語句的基本使用2. if else if多條件分支3. if語句算法題4. switch語句5. 三元運算符 二、循環語句1. for循環語句2. for循環算法題3. while循環語句4. break和continue5. do while語句 三、初識算法1. 什么是算法2. 累加器和累乘器3. 窮舉法4. 綜合算…

給大家推薦一些文本翻譯、文檔翻譯API接口

最近在項目中要接入文本翻譯和文檔翻譯功能&#xff0c;滿足在工作時使用&#xff0c;又需要了解每個人的使用情況&#xff0c;所以采用了集成翻譯API的方式&#xff0c;我再調研時也查了比較多的資料&#xff0c;總結了我感覺比較好的網站。 推薦網站 1、百度翻譯&#xff0…

設計模式(2)工廠方法模式

一、 1、介紹&#xff1a;定義一個用于創建對象的接口&#xff0c;讓子類決定實例化哪一個類。工廠方法使一個類的實例化延遲到其子類。簡單工廠模式的最大優點在于工廠類中包含了必要的邏輯判斷&#xff0c;根據客戶端的選擇條件動態實例化相關的類&#xff0c;對于客戶端來說…

odoo-034 float 浮點數比較

文章目錄 前提問題解決總結 前提 odoo 版本&#xff1a;13 python&#xff1a;3.6.9 問題 比較銷售訂單行中已送貨跟已開票&#xff0c;在 tree 視圖顯示搜索后的結果。發現搜索條件為已送貨 > 已開票時&#xff0c;結果中會包含已送貨已開票的。 解決 把這兩個值打印出…

LeNet中文翻譯

Gradient-Based Learning Applied to Document Recognition 基于梯度的學習應用于文檔識別 摘要 使用反向傳播算法訓練的多層神經網絡構成了成功的基于梯度的學習技術的最佳示例。給定適當的網絡架構&#xff0c;基于梯度的學習算法可用于合成復雜的決策表面&#xff0c;該決策…

【Vue-Router】使用 prams 路由傳參失效

報錯信息&#xff1a; [Vue Router warn]: Discarded invalid param(s) “name”, “price”, “id” when navigating. list.json {"data": [{"name": "面","price":300,"id": 1},{"name": "水",&quo…

node獲取微信小程序登錄用戶的openid

前提準備&#xff1a; 1、需要知道AppID(小程序ID) 2、AppSecret(小程序密鑰) 3、調wx.login成功后返回的code 代碼如下&#xff1a; const express require(express); const router express.Router(); const request require(request) const APP_URL https://api.wei…

考研408 | 【計算機網絡】 網絡層

導圖 網絡層&#xff1a; 路由器功能&#xff1a;轉發&路由選擇 數據平面 數據平面執行的主要功能是根據轉發表進行轉發&#xff0c;這是路由器的本地動作。 控制平面 1.傳統方法/每路由器法&#xff1a; 2.SDN方法&#xff08;Software-Defined Networking) 控制平面中的…

C++并發多線程--多個線程的數據共享和保護

目錄 1--創建并等待多個線程 2--數據共享 2-1--數據只讀 2-2--數據讀寫 2-3--共享數據保護簡單案例 1--創建并等待多個線程 創建多個線程時&#xff0c;可以使用同一個線程入口函數&#xff1b; 多個線程的執行順序與操作系統的調度機制有關&#xff0c;并不和創建線程的先…

html實現商品圖片放大鏡,html圖片放大鏡預覽

效果 實現 復制粘貼&#xff0c;修改圖片路徑即可使用 <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>商品圖片放大鏡</title></head><style>body {margin: 0;padding: 0;}#app {padding: 10px;posit…

關于青少年學習演講與口才對未來的領導力的塑造的探析

標題&#xff1a;青少年學習演講與口才對未來領導力的塑造&#xff1a;一項探析 摘要&#xff1a; 本論文旨在探討青少年學習演講與口才對未來領導力的塑造的重要性和影響。通過分析演講和口才對青少年的益處&#xff0c;以及如何培養這些技能來促進領導力的發展&#xff0c;我…