原创 看似CPU高實則內存高的ANR分析

有時候遇到一個ANR,可能單看ANR報錯還有點無從下手,那麼還需要更深入的分析一下日誌,從logcat、traces.txt等,如果trace.txt沒看出來啥,就多啃啃logcat信息,一定能有所發現。記一次看似CPU消耗,實則

原创 Mac上傳文件到遠程服務器

Mac上傳文件到遠程服務器,可以利用mac自帶的終端來進行上傳,使用sftp方式 終端shell菜單-> 新建遠程連接 sftp方式,輸入遠程服務器ip 3. 然後連接,連的時候會讓輸入密碼,輸入完成後,連上了會是下面

原创 Linux使用錯誤記錄

1. ubuntu常見錯誤–Could not get lock /var/lib/dpkg/lock解決 ubuntu常見錯誤–Could not get lock /var/lib/dpkg/lock解決 通過終端安裝程序su

原创 Android-jni(4)-C調用Java靜態方法修改靜態字段

一. jni交互相關-方法簽名 方法簽名在jni的使用中經常都會用到,在java中會有重載,那麼定位到一個方法的方式:類+方法名稱+方法簽名,那麼我們先學習下簽名規則: 基本類型簽名: 咱們基本類型有各自的簽名,如下表

原创 Flutter Web代碼運行問題記錄

一. 打包問題 1. 提示依賴 webdev could not run for this project. This version of webdev does not support the `build_daemon` p

原创 Android-jni(3)-原生方式打印Logcat

咱們打印日誌,Android通常是打印到logcat中,Android有自己的一套日誌系統,c裏面如果調用printf,包括c++中的cout等等都不能打印到logcat中。所以我們需要使用Android提供給我們的日誌庫來打印到

原创 Android-jni(5)-Jni調用實例方法

上一篇看了jni調用靜態方法和修改靜態字段,這一篇學習了jni調用實例方法和修改實例字段 調用實例方法,步驟: 找到類:利用FindClass,找到類 找到要調用的方法id:利用GetMethodID,找到方法id 創建實例

原创 AOP-Android-AspectJ使用

一. 介紹 以下介紹的其中部分內容是摘抄修改自網絡: AOP爲Aspect Oriented Programming的縮寫,意爲:面向切面編程,通過預編譯方式和運行期動態代理實現程序功能的統一維護的一種技術。 它並沒有幫助我們解決

原创 Android-jni(1)-環境配置

一. Android Studio配置 (一) 組件下載 要使用和調試,先下載NDK組件: NDK包:這套工具集允許您爲 Android 使用 C 和 C++ 代碼,並提供衆多平臺庫,讓您可以管理原生 Activity 和訪問

原创 Android-jni(2)-第一個native方法

在前面講了基礎配置,那麼接下來開始使用了: 第一個native方法 在第一篇中配置完cmake後,筆者在MainActivity中創建來了一個native方法: package shixin.ndkdemo; import an

原创 Kotlin基礎語法

1. 變量 val : 常量 聲明初始化後不能再改變的量,類似java中的final val a: Int = 1 // 指定類型申明,不過這是多餘的操作 val age = 5 // 自動確定爲int val na

原创 記一次Android Flash Sms引起的問題

閃信接收分析 flash sms現在雖然用的很少了,但是手機的代碼中默認還是支持閃信這種類型的,在某郵箱裏還是支持下發閃信的 由於我們設備一直不用短信這個功能,突然一天跳出一個頁面: 一開始直接懵逼,怎麼會跳出一個短信頁面呢,查

原创 ln命令使用

Linux中ln是一個非常重要的一個命令,主要是將兩個文檔進行連接,創建一個連接關係 連接檔:ln 使用ln可以在兩個文件之間建立關聯,就類似Windows下的快捷方式,連接有兩種方式 Hard Link(硬式連接或實際連接)

原创 Flutter-Widget-Text 控件初探

Flutter-Widget-Text控件 Text控件十分常用,需要使用到文字的時候就會用到它,看一下它擁有的屬性 1. 其構造方法如下: const Text( this.data, { Key key,

原创 Flutter Web代碼運行問題

一. 打包問題 1. 提示依賴 webdev could not run for this project. This version of webdev does not support the `build_daemon` p