真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

android發(fā)送at,Android發(fā)送http請求

Android 應(yīng)用程序怎么通過RIL層發(fā)送AT命令

android 電話服務(wù)就是通過AT來實(shí)現(xiàn)的,不過不是java應(yīng)用層直接發(fā)AT

創(chuàng)新互聯(lián)建站專注于企業(yè)成都全網(wǎng)營銷推廣、網(wǎng)站重做改版、項(xiàng)城網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5建站、成都商城網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為項(xiàng)城等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

而是通過socket,把命令發(fā)到RIL層,RIL篩選AT命令,與底層交互,實(shí)現(xiàn)電話的各個功能

你可以查一查RIL的實(shí)現(xiàn)

Android平臺到底能不能通過串口發(fā)送AT指令呢,急?。?

AT命令(Attention)在手機(jī)中,用于對modem(也就是移動模塊)通過串口命令進(jìn)行操作,處理與語音電話、短信和數(shù)據(jù)。

關(guān)于AT命令:

Android系統(tǒng)與AT命令

對于智能手機(jī),AP和BP分離的情況,在AP上的系統(tǒng)通過串口和BP通信是個不錯方式。在Android的源碼中有一個內(nèi)部包c(diǎn)om.android.internal.telephony中有對AT命令的封裝和解析,但這種internal的包開發(fā)者不能調(diào)用的SDK部分,可以用來封裝ROM。這說明Android對AT command的方式是支持的。

對于Android如何調(diào)用AT command

用root登錄命令行,直接對串口進(jìn)行操作,如echo -e "AT\r" /dev/smd0

具體的串口,不同設(shè)備會有不同,甚至不一定會提供。這種方式,開發(fā)者是可以調(diào)用的,通過Runtime.exec直接執(zhí)行命令行命令,但要求是root,例如echo -e "ATD123456789;\r" /dev/smd0,撥打123456789的號碼。

目前最新的AT命令標(biāo)準(zhǔn)發(fā)布與2014.6.27,似乎還活得挺滋潤的。但是給出的keywords是UMTS, GSM, command, terminal, LTE這說明CDMA確實(shí)很可能不是采用AT命令的方式。

Android怎么直接發(fā)AT命令測試

一、準(zhǔn)備測試環(huán)境及測試文件

1、安裝Java JDk,設(shè)置好環(huán)境變量

2、安裝Android SDK,設(shè)置好環(huán)境變量(詳細(xì)步驟略)

3、準(zhǔn)備被測apk及測試所需的一些工具

二、啟動模擬器,并解鎖

批處理腳本:

emulator -avd Galaxy4.2 ::啟動模擬器

ping -n 90 127.0.0.1nul ::等待模擬器啟動成功,-n 90 為等待時間,建議設(shè)置大一點(diǎn)

adb shell input keyevent 82 ::模擬器打開后都會鎖屏,adb模擬鍵盤輸入,解鎖

ping -n 2 127.0.0.1nul

三、腳本參數(shù)初始化

代碼如下:

set appName=TestAndroid.apk ::被測程序名稱

set pkgName=com.example.testandroid ::被測程序包名

set openName=com.example.testandroid.MainActivity ::被測試程序主activity

set "times=%1" ::測試次數(shù),腳本傳入?yún)?shù)

xcopy blat.exe C:\Windows\System32\ /Y ::將郵件工具復(fù)制到系統(tǒng)文件夾下,需關(guān)閉360衛(wèi)士

四、循環(huán)執(zhí)行安裝打開關(guān)閉卸載

echo 測試開始source.txt ::創(chuàng)建一個source文件記錄日志

for /l %%a in (1,1,%times%) do (

adb install TestAndroid.apk ::安裝apk

adb shell am start -W -n %pkgName%/%openName% ::打開apk

call cmd /c close.bat %pkgName% ::關(guān)閉apk

adb uninstall %pkgName% ::卸載apk

adb logcat -d |findstr "^D/k.*}\" ::過濾logcat,獲取需要的內(nèi)容

adb logcat -c ::清除logcat日志

taskkill /f /im adb.exe)source.txt ::結(jié)束adb進(jìn)程,防止占用source文件

::每次操作日志都記錄在source中

五、處理source.txt提取關(guān)鍵信息,并發(fā)送郵件

六、設(shè)置windows定時任務(wù),參數(shù)填寫為測試次數(shù),完成。

android 怎么通過藍(lán)牙向一個硬件發(fā)送AT指令

將16進(jìn)制的字符串轉(zhuǎn)換成bytes,通過hexstring2bytes轉(zhuǎn)換而不能直接用getbytesString string = "41542B50494F392C310D"; mmOutStream.write(string.getBytes());讀取inputsteam中的 ? Log.d("example", "do read"); 不執(zhí)行,完整代碼如下:?/*** This thread runs during a connection with a remote device. It handles all* incoming and outgoing transmissions.*/ private class ConnectedThread extends Thread {private final BluetoothSocket mmSocket;private final InputStream mmInStream;private final OutputStream mmOutStream;public ConnectedThread(BluetoothSocket socket, String socketType) {Log.d(TAG, "create ConnectedThread: " + socketType);mmSocket = socket;InputStream tmpIn = null;OutputStream tmpOut = null;// Get the BluetoothSocket input and output streamstry {tmpIn = socket.getInputStream();tmpOut = socket.getOutputStream();} catch (IOException e) {Log.e(TAG, "temp sockets not created", e);}mmInStream = tmpIn;mmOutStream = tmpOut;}public void run() {Log.i(TAG, "BEGIN mConnectedThread");byte[] buffer = new byte[1024];int bytes;// Keep listening to the InputStream while connectedwhile (true) {Log.d("example", "do read");try {// Read from the InputStreambytes = mmInStream.read(buffer);// Send the obtained bytes to the UI ActivitymHandler.obtainMessage(BluetoothChat.MESSAGE_READ, bytes,-1, buffer).sendToTarget();} catch (IOException e) {Log.e(TAG, "disconnected", e);connectionLost();// Start the service over to restart listening modeBluetoothChatService.this.start();break;}}}/*** Write to the connected OutStream.** @param buffer* The bytes to write*/public void write(byte[] buffer) {String string = "41542B50494F392C310D";try {mmOutStream.write(string.getBytes());// Share the sent message back to the UI ActivitymHandler.obtainMessage(BluetoothChat.MESSAGE_WRITE, -1, -1,buffer).sendToTarget();} catch (IOException e) {Log.e(TAG, "Exception during write", e);}}public void cancel() {try {mmSocket.close();} catch (IOException e) {Log.e(TAG, "close() of connect socket failed", e);}} }

Android 發(fā)送AT指令

1、hardware\ril\reference-ril\Reference-ril.c 中 onRequest() 處理RIL_REQUEST_DIAL 時會 調(diào)用requestDial();

2、requestDial()中轉(zhuǎn)換RIL_REQUEST_DIAL 請求為AT指令;

3、通過at_send_command()下發(fā);

4、經(jīng)過at_send_command_full,at_send_command_full_nolock ,writeline()寫到設(shè)備中。

android 發(fā)送AT命令

android 電話服務(wù)就是通過AT來實(shí)現(xiàn)的,不過不是java應(yīng)用層直接發(fā)AT

而是通過socket,把命令發(fā)到RIL層,RIL篩選AT命令,與底層交互,實(shí)現(xiàn)電話的各個功能

你可以查一查RIL的實(shí)現(xiàn)


網(wǎng)站題目:android發(fā)送at,Android發(fā)送http請求
當(dāng)前鏈接:http://weahome.cn/article/dsdoesg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部