原创 Android GpioService從app到驅動

因爲最近項目Android要用到APP控制相關GPIO控制,因爲網上大部分都是app直接通過JNI控制GPIO,這樣做存在一個問題,GPIO被多個app打開會報錯。同時也違背了Android設計初衷。這裏demo也是從其他項目拷貝過來的。

原创 Android串口Serial服務解析

正常Android設備的串口一般是用作debug調試使用,隨着Android設備使用越來越廣,比如智能pos、智能掃碼機都會用到Android主板和單片機進行通信,如果Android主板和單片機通信數據量大可以使用USB,若是通信數據量小

原创 有關wifi配置工具wpa_cli以及wpa_supplicant簡單分析

最近在公司開發新產品智能Android機器人,開始使用的是rk3229開發板,在調試wifi的時候經常用到工具wap_cli,開始使用demo板調試的時候wpa_cli可以正常使用。但是由於產品需要支持藍牙功能,所以換了博通的AP6212

原创 聲波配網研究

最近公司再做智能音箱項目。準備airkiss和聲波配網進行二選一。airkiss是通過wifi廣播的形式進行傳輸ssid和pwd。測試下來抗干擾性好。聲波配網簡單。不需要有wifi只要有mic輸入解碼即可,所以自己移植了網址 http:

原创 airkiss技術原理

AirKiss原理分析 一、 AirKiss概述 AirKiss技術是一種創新性的信息傳遞技術。通過該技術可以便捷的向一臺 與外界沒有建立任何一種實質性連接(包括有線、無線、藍牙、NFC等)的設備傳遞信息(可以是環境中Wifi的ss

原创 解決rk3288啓動SurfaceFlinger 初始化失敗問題

最近編譯rk3288源碼遇到一個奇怪的問題,正常編譯使用的Android源碼。如果做一些改動之後。再燒錄啓動失敗很是苦惱,主要報下面錯誤 kernel 失敗日誌 [ 4.088148] EXT4-fs (mmcblk0p12):

原创 解壓RK3288的boot.img修改init.rc 添加開機自啓動腳本

最近找別人開發一款智能AI機器人,由於方案廠商現在代碼還沒有交付。每次只提供ROM。現在公司要求要開機啓動系統檢測腳本。我們都知道Android現在權限管理很嚴格。而且我的腳本是用shell腳本完成的。所以無法監聽開機廣播。只能修改ini

原创 使用命令生成update.zip以及添加升級包檢驗簽名功能

一般普通ota升級都是直接調用RecoverySystem.installPackage,讓系統進入recovery,然後在recovery升級Android系統,但是存在一個缺點。如果他人使用非系統簽名的update.zip升級包。也會

原创 AMS分析--基於深入理解android(3)

//將待啓動的Activity放入棧頂 final void startActivityLocked(ActivityRecord r, boolean newTask, boolean doResume, b

原创 探究startActivityForResult在singleTop和singleTask啓動模式討論

最近在研究AMS代碼遇到一個問題,在函數startActivityUncheckedLocked中 Slog.d("DDY", "!!!!!!!!!!!!!!!!!!!" ); if (r.packageName

原创 Android 使用非阻塞的方式讀寫串口

上一篇博客簡單介紹了Android 串口使用demo,項目開發中由於app 同學要求 例如 getMcuversion() 返回值是 當前單片機版本號,由於我們串口是阻塞的 ,所以我們接收到串口返回值後,readthread 仍不會結束

原创 python編寫的adb 腳本 (二)查看系統狀態

import os import time import subprocess from color import * ############################# #這裏要進入自己adb目錄。每個人根據自己的adb

原创 Android iperf 工具移植和編譯

最近項目需要測試wifi的功能。Linux下的iperf很好用,但是在Android下面是沒有這個工具的。所以自己就移植了一個。 源碼大概如下: Android.mk 文件內容如下: ifneq ($(TARGET_SIM

原创 python編寫的adb 腳本 (一)監控系統網速

import os import time import subprocess import signal import sys root_cmd = "adb root" os.chdir(r'C:\Users\lvbiao

原创 python寫的Android的 tcpdump 數據實時發送到wireshark

import signal import sys import subprocess import os import time global forward_status global adb_root forward_c