當前位置:首頁 » 操作系統 » ble源碼

ble源碼

發布時間: 2023-01-25 17:12:49

⑴ 在C# 里 怎麼讓字體動 自我放在了 labble里要源碼 謝謝了

加一個Timer
然後每秒在label.Text=""裡面放一個空格
往前移動,就每秒從頭上減去一個字元,在多少個空格之後,增加減去的字母
往後移動,就在頭上每秒增加一個空格,到多少後,從後面減字元,放到第一個位置。

多簡單的邏輯啊,這個是最笨的方法了,再不會,你自裁吧!

⑵ Android 手機可以通過 BLE 被掃描到嗎

支持BLE的安卓手機都可以,當然還要開啟開放檢測

⑶ 欲使用串口監視器,需在代碼中配置什麼

調試器
20行代碼實現(UartLogger)串口監控記錄器

shine_blink
原創
關注
1點贊·851人閱讀
文章目錄
前言
一、UartLogger功能介紹
二、完整源代碼
三、實驗結果
四、更多花樣
前言
shineblink core 開發板(簡稱Core)的庫函數支持Uart功能,所以只需要調用兩個API,即可實現Uart通信。

PS:Core 僅用五、六行代碼即可實現Wifi/Ble/NB/Lora/ThreadMesh/RFID/Eth/Usb/RS485/RS232通信、以及30多種感測器/10多種硬體外設/10多種Mcu內設功能,並且這些功能最多可以 5 種隨機組合同時運行。更多關於Core的內容可以在 shineblink.com 上了解。

一、UartLogger功能介紹
我們在開發過程中,有時需要一個第三方的硬體工具(UartLogger)來監控串口Tx、Rx的具體通信內容,這時我們用Core就可以很容易實現這一目的。並且Core可以將監控到的Tx、Rx通信內容以各種形式輸出或存儲在Core的TF卡上。

下圖舉了一個典型的例子來詮釋UartLogger的作用:

利用UartLogger我們就可以在開發ESP8266串口WIFI模塊時,捕捉到MCU和ESP8266通信的具體內容。其他類似的場景只要是Uart介面,UartLogger都可以發揮其作用。

二、完整源代碼
注意:本例中假設被監控的Uart口波特率是115200,實際波特率需要您自己調整。

--配置Core的USB介面作為虛擬串口連接電腦,列印輸出UartLogger捕捉到的內容
--當然,您也可以配置成藍牙輸出,WIFI輸出,看您心情了
LIB_UsbConfig("CDC_PD")
LIB_GpioOutputConfig("D8","STANDARD")
LIB_GpioOutputConfig("D9","STANDARD")
LIB_Uart0Config("BAUDRATE_115200")
LIB_Uart1Config("BAUDRATE_115200")
prefix0 = {13, 10, 82, 88, 48, 58, 13, 10} --"\r\nRX0:\r\n"
prefix1 = {13, 10, 82, 88, 49, 58, 13, 10} --"\r\nRX1:\r\n"
--開始大循環
while(GC(1) == true)
do
recv_flag0,recv_tab0 = LIB_Uart0Recv()
if recv_flag0 == 1 then
LIB_GpioToggle("D8") --LED1 Toggle
LIB_UsbCdcSend(prefix0)
LIB_UsbCdcSend(recv_tab0)--在串口終端上顯示RX0引腳捕捉到的內容
end

recv_flag1,recv_tab1 = LIB_Uart1Recv()
if recv_flag1 == 1 then
LIB_GpioToggle("D9") --LED2 toggle
LIB_UsbCdcSend(prefix1)
LIB_UsbCdcSend(recv_tab1)--在串口終端上顯示RX1引腳捕捉到的內容
end
end
登錄後復制

三、實驗結果
本實驗中,我們捕捉和ESP8266串口WIFI模塊的通信內容,並列印輸出到終端軟體上,下圖為捕捉到的具體內容:

四、更多花樣
將監控到的Tx、Rx通信內容存儲在TF卡這一功能在找問題時非常方便,我們不用一直守著設備,而是在某個時間取出TF卡查看內容即可。

具體實現很簡單,只需要將上面常式中的LIB_UsbCdcSend()函數換成LIB_Fwrite()即可,例如:

原代碼

LIB_UsbCdcSend(prefix0)
LIB_UsbCdcSend(recv_tab0)--在串口終端上顯示RX0引腳捕捉到的內容

LIB_UsbCdcSend(prefix1)
LIB_UsbCdcSend(recv_tab1)--在串口終端上顯示RX1引腳捕捉到的內容
登錄後復制
替換後的代碼:

LIB_Fwrite("abc.txt", prefix0)
LIB_Fwrite("abc.txt", recv_tab0)--將RX0引腳捕捉到的內容存到TF卡上abc.txt文件中

LIB_Fwrite("abc.txt", prefix1)
LIB_Fwrite("abc.txt", recv_tab1)--將RX1引腳捕捉到的內容存到TF卡上abc.txt文件中
登錄後復制
uart
syslog
mcu
單片機
調試器
平板電腦一般多少錢
精選推薦
廣告

tty-logger-chrome:TTY UART記錄器作為Chrome應用程序
0下載·0評論
2021年5月23日
行車記錄儀USB
5431閱讀·0評論·1點贊
2016年3月11日
UART Log
1475閱讀·0評論·2點贊
2020年4月7日
【防扯皮】串口數據監聽
4246閱讀·1評論·0點贊
2021年9月26日
USBee Suite抓I2C; USBee示波器; USBee Suite抓上電時序; USBee Suite抓取UART; USBee Suite抓取SPI; 數據記錄儀
1.5W閱讀·0評論·1點贊
2010年11月10日
串口監視的源程序代碼(C++)
741閱讀·3評論·1點贊
2008年10月7日
想賺錢請記住!財商思維不可少!因你永遠掙不到你認知范圍以外的錢

00:47
12元學財商
廣告
二次開發源碼:串口監視(不佔用串口).zip
20下載·0評論
2020年6月17日
ComSpy串口監視精靈 v1.2 中文綠色版_串口_
9下載·0評論
2021年10月1日
串口監控CommMonitor
62下載·4評論
2013年10月22日
串口監聽工具的源代碼
327下載·13評論
2014年11月1日
【經驗分享】一個實用的C語言宏定義技巧寫法
483閱讀·1評論·1點贊
2022年6月30日
嵌入式基礎--日誌模塊
792閱讀·5評論·1點贊
2021年7月25日
ov7670 linux源碼,攝像頭二值化 STM32 ov7670源碼
238閱讀·0評論·0點贊
2021年5月15日
易語言 串口控制 源碼 串口控制寫好了 ,就可以輕松地控制電力儀表 信號採集 單片機等 信號
574閱讀·0評論·0點贊
2022年7月29日
串口記錄儀,附有原理設計
14下載·0評論
2020年4月28日
串口監聽(包含實例代碼與講解)
74下載·5評論
2010年5月21日
OpenLog 是一款開源數據記錄器,可通過簡單的串列連接工作,並支持高達 64GB 的 microSD_C++_代碼_下載
0下載·0評論
2022年7月4日
去首頁
看看更多熱門內容

⑷ Android-Ble藍牙開發Demo示例–掃描,連接,發送和接收數據,分包解包(附源碼)

萬物互聯的物聯網時代的已經來臨,ble藍牙開發在其中扮演著舉重若輕的角色。最近剛好閑一點,抽時間梳理下這塊的知識點。

涉及ble藍牙通訊的客戶端(開啟、掃描、連接、發送和接收數據、分包解包)和服務端(初始化廣播數據、開始廣播、配置Services、Server回調操作)整個環節以及一些常見的問題即踩過的一些坑。

比如
1、在Android不同版本或不同手機的適配問題,掃描不到藍牙設備
2、如何避免ble藍牙連接出現133錯誤?
3、單次寫的數據大小有20位元組限制,如何發送長數據

藍牙有傳統(經典)藍牙和低功耗藍牙BLE(Bluetooth Low Energy)之分,兩者的開發的API不一樣,本文主講Ble藍牙開發,傳統藍牙不展開,有需要的可以自行了解。

相對傳統藍牙,BLE低功耗藍牙,主要特點是快速搜索,快速連接,超低功耗保持連接和數據傳輸。

客戶端

服務端

Android4.3(API Level 18)開始引入BLE的核心功能並提供了相應的 API。應用程序通過這些 API 掃描藍牙設備、查詢 services、讀寫設備的 characteristics(屬性特徵)等操作。

BLE藍牙協議是GATT協議, BLE相關類不多, 全都位於android.bluetooth包和android.bluetooth.le包的幾個類:
android.bluetooth.
.BluetoothGattService 包含多個Characteristic(屬性特徵值), 含有唯一的UUID作為標識
.BluetoothGattCharacteristic 包含單個值和多個Descriptor, 含有唯一的UUID作為標識
.BluetoothGattDescriptor 對Characteristic進行描述, 含有唯一的UUID作為標識

.BluetoothGatt 客戶端相關
.BluetoothGattCallback 客戶端連接回調
.BluetoothGattServer 服務端相關
.BluetoothGattServerCallback 服務端連接回調

android.bluetooth.le.
.AdvertiseCallback 服務端的廣播回調
.AdvertiseData 服務端的廣播數據
.AdvertiseSettings 服務端的廣播設置
.BluetoothLeAdvertiser 服務端的廣播

.BluetoothLeScanner 客戶端掃描相關(Android5.0新增)
.ScanCallback 客戶端掃描回調
.ScanFilter 客戶端掃描過濾
.ScanRecord 客戶端掃描結果的廣播數據
.ScanResult 客戶端掃描結果
.ScanSettings 客戶端掃描設置

BLE設備分為兩種設備: 客戶端(也叫主機/中心設備/Central), 服務端(也叫從機/外圍設備/peripheral)
客戶端的核心類是 BluetoothGatt
服務端的核心類是 BluetoothGattServer 和 BluetoothLeAdvertiser
BLE數據的核心類是 BluetoothGattCharacteristic 和 BluetoothGattDescriptor

下面詳細講解下客戶端和服務端的開發步驟流程

安卓手機涉及藍牙許可權問題,藍牙開發需要在AndroidManifest.xml文件中添加許可權聲明:

在搜索設備之前需要詢問打開手機藍牙:

注意: BLE設備地址是動態變化(每隔一段時間都會變化),而經典藍牙設備是出廠就固定不變了!

通過掃描BLE設備,根據設備名稱區分出目標設備targetDevice,下一步實現與目標設備的連接,在連接設備之前要停止搜索藍牙;停止搜索一般需要一定的時間來完成,最好調用停止搜索函數之後加以100ms的延時,保證系統能夠完全停止搜索藍牙設備。停止搜索之後啟動連接過程;

BLE藍牙的連接方法相對簡單只需調用connectGatt方法;

參數說明

與設備建立連接之後與設備通信,整個通信過程都是在BluetoothGattCallback的非同步回調函數中完成;

BluetoothGattCallback中主要回調函數如下:

上述幾個回調函數是BLE開發中不可缺少的;

當調用targetdDevice.connectGatt(context, false, gattCallback)後系統會主動發起與BLE藍牙設備的連接,若成功連接到設備將回調onConnectionStateChange方法,其處理過程如下:

判斷newState == BluetoothGatt.STATE_CONNECTED表明此時已經成功連接到設備;

mBluetoothGatt.discoverServices();

掃描BLE設備服務是安卓系統中關於BLE藍牙開發的重要一步,一般在設備連接成功後調用,掃描到設備服務後回調onServicesDiscovered()函數,函數原型如下:

BLE藍牙開發主要有負責通信的BluetoothGattService完成的。當且稱為通信服務。通信服務通過硬體工程師提供的UUID獲取。獲取方式如下:

具體操作方式如下:

開啟監聽,即建立與設備的通信的首發數據通道,BLE開發中只有當客戶端成功開啟監聽後才能與服務端收發數據。開啟監聽的方式如下:

BLE單次寫的數據量大小是有限制的, 通常是20位元組 ,可以嘗試通過requestMTU增大,但不保證能成功。分包寫是一種解決方案,需要定義分包協議,假設每個包大小20位元組,分兩種包,數據包和非數據包。對於數據包,頭兩個位元組表示包的序號,剩下的都填充數據。對於非數據包,主要是發送一些控制信息。
監聽成功後通過向 writeCharacteristic寫入數據實現與服務端的通信。寫入方式如下:

其中:value一般為Hex格式指令,其內容由設備通信的藍牙通信協議規定;

若寫入指令成功則回調BluetoothGattCallback中的onCharacteristicWrite()方法,說明將數據已經發送給下位機;

若發送的數據符合通信協議,則服務端會向客戶端回復相應的數據。發送的數據通過回調onCharacteristicChanged()方法獲取,其處理方式如下:

通過向服務端發送指令獲取服務端的回復數據,即可完成與設備的通信過程;

當與設備完成通信之後之後一定要斷開與設備的連接。調用以下方法斷開與設備的連接:

源碼上傳在CSDN上了,有需要的可以借鑒。

=====> Android藍牙Ble通訊Demo示例源碼–掃描,連接,發送和接收數據,分包解包

BLE單次寫的數據量大小是有限制的,通常是20位元組,可以嘗試通過requestMTU增大,但不保證能成功。分包寫是一種解決方案,需要定義分包協議,假設每個包大小20位元組,分兩種包,數據包和非數據包。對於數據包,頭兩個位元組表示包的序號,剩下的都填充數據。對於非數據包,主要是發送一些控制信息。
總體流程如下:
1、定義通訊協議,如下(這里只是個舉例,可以根據項目需求擴展)

2、封裝通用發送數據介面(拆包)
該介面根據會發送數據內容按最大位元組數拆分(一般20位元組)放入隊列,拆分完後,依次從隊列里取出發送

3、封裝通用接收數據介面(組包)
該介面根據從接收的數據按協議里的定義解析數據長度判讀是否完整包,不是的話把每條消息累加起來

4、解析完整的數據包,進行業務邏輯處理

5、協議還可以引入加密解密,需要注意的選演算法參數的時候,加密後的長度最好跟原數據長度一致,這樣不會影響拆包組包

一般都是Android版本適配以及不同ROM機型(小米/紅米、華為/榮耀等)(EMUI、MIUI、ColorOS等)的許可權問題

藍牙開發中有很多問題,要靜下心分析問題,肯定可以解決的,一起加油;

⑸ 求WINDOWS系統 Explorer.exe文件源碼和相關編譯教程!!!

ble Library 即動態鏈接庫文件),是一種不能單獨運行的文件,它允許程序共享執行特殊任務所必需的代碼和其他資源
比較大的應用程序都由很多模塊組成,這些模塊分別完成相對獨立的功能,它們彼此協作來完成整個軟體系統的工作。可能存在一些模塊的功能較為通用,在構造其它軟體系統時仍會被使用。在構造軟體系統時,如果將所有模塊的源代碼都靜態編譯到整個應用程序 EXE 文件中,會產生一些問題:一個缺點是增加了應用程序的大小,它會佔用更多的磁碟空間,程序運行時也會消耗較大的內存空間,造成系統資源的浪費;另一個缺點是,在編寫大的 EXE 程序時,在每次修改重建時都必須調整編譯所有源代碼,增加了編譯過程的復雜性,也不利於階段性的單元測試。
Windows 系統平台上提供了一種完全不同的較有效的編程和運行環境,你可以將獨立的程序模塊創建為較小的 DLL 文件,並可對它們單獨編譯和測試。在運行時,只有當 EXE 程序確實要調用這些 DLL 模塊的情況下,系統才會將它們裝載到內存空間中。這種方式不僅減少了 EXE 文件的大小和對內存空間的需求,而且使這些 DLL 模塊可以同時被多個應用程序使用。Windows 自己就將一些主要的系統功能以 DLL 模塊的形式實現。
一般來說,DLL 是一種磁碟文件,以.dll、.DRV、.FON、.SYS 和許多以 .EXE 為擴展名的系統文件都可以是 DLL。它由全局數據、服務函數和資源組成,在運行時被系統載入到調用進程的虛擬空間中,成為調用進程的一部分。如果與其它 DLL 之間沒有沖突,該文件通常映射到進程虛擬空間的同一地址上。DLL 模塊中包含各種導出函數,用於向外界提供服務。DLL 可以有自己的數據段,但沒有自己的堆棧,使用與調用它的應用程序相同的堆棧模式;一個 DLL 在內存中只有一個實例;DLL 實現了代碼封裝性;DLL 的編制與具體的編程語言及編譯器無關。
在 Win32 環境中,每個進程都復制了自己的讀/寫全局變數。如果想要與其它進程共享內存,必須使用內存映射文件或者聲明一個共享數據段。DLL 模塊需要的堆棧內存都是從運行進程的堆棧中分配出來的。Windows 在載入 DLL 模塊時將進程函數調用與 DLL 文件的導出函數相匹配。Windows 操作系統對 DLL 的操作僅僅是把 DLL 映射到需要它的進程的虛擬地址空間里去。DLL 函數中的代碼所創建的任何對象(包括變數)都歸調用它的線程或進程所有。

⑹ 如何使用 CC2540 製作一個 iBeacon

准備工作
一台 PC
IAR Embedded Workbench 集成開發環境,可以用30天試用版本。
支持 藍牙 4.0 的智能手機一部,並安裝下列應用之一
Android Google Play Store.
iPhone App Store.
CC2540 開發板
CCDebugger 下載器
創建 iBeacon 工程文檔
安裝 TI 官方的 CC254x 開發環境
復制 C:\Texas Instruments\BLE-CC254x-1.3.2\Projects\ble\SimpleBLEBroadcaster 文件夾
粘貼到:C:\Texas Instruments\BLE-CC254x-1.3.2\Projects\ble\iBeacon
運行 IAR Embedded Workbench,點擊 File > Open > Workspace
修改源代碼
simpleBLEBroadcaster.c
// GAP - Advertisement data (max size = 31 bytes, though this is
// best kept short to conserve power while advertisting)
static uint8 advertData[] =
{
// Flags; this sets the device to use limited discoverable
// mode (advertises for 30 seconds at a time) instead of general
// discoverable mode (advertises indefinitely)
0x02, // length of this data
GAP_ADTYPE_FLAGS,
GAP_ADTYPE_FLAGS_BREDR_NOT_SUPPORTED,

// three-byte broadcast of the data "1 2 3"
0x04, // length of this data including the data type byte
GAP_ADTYPE_MANUFACTURER_SPECIFIC, // manufacturer specific advertisement data type
1,
2,
3
};

修改下面關鍵字
UID: E2C56DB5-DFFB-48D2-B060-D0F5A71096E0
Major: 1 (0x0001)
Minor: 1 (0x0001)
Measured Power: -59 (0xc5)
// GAP - Advertisement data (max size = 31 bytes, though this is
// best kept short to conserve power while advertisting)
static uint8 advertData[] =
{
// 25 byte ibeacon advertising data
// Preamble: 0x4c000215
// UUID: E2C56DB5-DFFB-48D2-B060-D0F5A71096E0
// Major: 1 (0x0001)
// Minor: 1 (0x0001)
// Measured Power: -59 (0xc5)
0x1A, // length of this data including the data type byte
GAP_ADTYPE_MANUFACTURER_SPECIFIC, // manufacturer specific advertisement data type
0x4c,
0x00,
0x02,
0x15,
0xe2,
0xc5,
0x6d,
0xb5,
0xdf,
0xfb,
0x48,
0xd2,
0xb0,
0x60,
0xd0,
0xf5,
0xa7,
0x10,
0x96,
0xe0,
0x00,
0x01,
0x00,
0x01,
0xc5
};

接下來修改廣播類型,將下面代碼
//uint8 advType = GAP_ADTYPE_ADV_NONCONN_IND;// use non-connectable advertisements
uint8 advType = GAP_ADTYPE_ADV_DISCOVER_IND; // use scannable unidirected advertisements

修改為
uint8 advType = GAP_ADTYPE_ADV_NONCONN_IND; // use non-connectable advertisements
//uint8 advType = GAP_ADTYPE_ADV_DISCOVER_IND; // use scannable unidirected advertisements

接下來修改 GAP
// Set the GAP Role Parameters
GAPRole_SetParameter( GAPROLE_ADVERT_ENABLED, sizeof( uint8 ), &initial_advertising_enable );
GAPRole_SetParameter( GAPROLE_ADVERT_OFF_TIME, sizeof( uint16 ), &gapRole_AdvertOffTime );

GAPRole_SetParameter( GAPROLE_SCAN_RSP_DATA, sizeof ( scanRspData ), scanRspData );
GAPRole_SetParameter( GAPROLE_ADVERT_DATA, sizeof( advertData ), advertData );
GAPRole_SetParameter( GAPROLE_ADV_EVENT_TYPE, sizeof( uint8 ), &advType );

因為 iBeacon 必須不間斷廣播,並且不響應任何數據請求,所以我們要修改 GAPROLE_ADVERT_OFF_TIME 和 GAPROLE_SCAN_RSP_DATA。
// Set the GAP Role Parameters
GAPRole_SetParameter( GAPROLE_ADVERT_ENABLED, sizeof( uint8 ), &initial_advertising_enable );
//GAPRole_SetParameter( GAPROLE_ADVERT_OFF_TIME, sizeof( uint16 ), &gapRole_AdvertOffTime );

//GAPRole_SetParameter( GAPROLE_SCAN_RSP_DATA, sizeof ( scanRspData ), scanRspData );
GAPRole_SetParameter( GAPROLE_ADVERT_DATA, sizeof( advertData ), advertData );
GAPRole_SetParameter( GAPROLE_ADV_EVENT_TYPE, sizeof( uint8 ), &advType );

保存工程後,進行編譯,並通過 CCDebugger 下載程序到開發板中。
Select Project > Clean to clean the project.
Select Project > Make to make the project.
Select Project > Download and Debug to send the code to the CC2540 Key Fob
Select Debug > Go to Run the code on the CC2540 Key Fob.

BLE iBeacon
TI Displayport ESD Protection – TPD8S009
Arino SPI 精華課程

TAGS
Arino Arino Due Arino Esplora Atmega32u4 Atmel BacklightBMP085 Bootloader CC3x00 DatasheetDisplayport EasyDriver EDID eDPEsplora HDMI HMC5883L I2CJoystick LCD LED Luban LVDS MIPIMPU6050 MySQL Nginx PCB php pinModePWM PX4 Raspberry Pi RGB Sensor SPIStepper Motor Ubuntu Wifi 搖桿 樹莓派步進電機 電源 背光 藍牙
CATEGORIES
3D Printer
Android
Application Notes
Arino
AVR
Backlight Driver
C
CC3x00
Datasheet
Development Environment
HDMI
Imaging & Graphics
iOS
Javascript
LCD/LCM
Material
Others
PCB Design
Power Management
Prototyping
Raspberry Pi
Rostock
Sensor
Server
Software
STM32
Super Manual
Tutorials
Work

⑺ android 藍牙BLE 該怎麼搞,我是想搞個中心和周邊 ,推送消息

Android4.3 規范了BLE的API,但是直到目前的4.4,還有些功能不完善。

在BLE協議中,有兩個角色,周邊(Periphery)和中央(Central);周邊是數據提供者,中央是數據使用/處理者;在iOS SDK裡面,可以把一個iOS設備作為一個周邊,也可以作為一個中央;但是在Android SDK裡面,直到目前最新的Android4.4.2,Android手機只能作為中央來使用和處理數據;那數據從哪兒來?從BLE設備來,現在的很多可穿戴設備都是用BLE來提供數據的。

一個中央可以同時連接多個周邊,但是一個周邊某一時刻只能連接一個中央。

大概了解了概念後,看看Android BLE SDK的四個關鍵類(class):

a)BluetoothGattServer作為周邊來提供數據;BluetoothGattServerCallback返回周邊的狀態。

b)BluetoothGatt作為中央來使用和處理數據;BluetoothGattCallback返回中央的狀態和周邊提供的數據。

因為我們討論的是Android的BLE SDK,下面所有的BluetoothGattServer代表周邊,BluetoothGatt代表中央。


一.創建一個周邊(雖然目前周邊API在Android手機上不工作,但還是看看)

a)先看看周邊用到的class,藍色橢圓

⑻ android ble4.0 怎麼獲取 dbm

. 這個可能得用自定義UUID和service來完成,類似於一個BLE串口透傳模式。可以參考一下TI的serial port代碼:http://processors.wiki.ti.com/index.php/LPRF_BLE_SerialApp
2. Android端的目前沒有傳文字信息的源碼,但是TI提供了很多Android BLE的示例代碼,可以供你參考,裡面有傳數據的,應該對你有借鑒意義:http://www.ti.com/tool/sensortag-sw

⑼ 哪裡有ble device monitor 的源碼

你沒看到 sdcard文件是個軟連接嗎,它指向的是 /storag...這個目錄,sdcard文件夾相當於windows的一個快捷方式而已。

熱點內容
python是腳本語言主要用作 發布:2025-07-08 04:25:54 瀏覽:760
安卓怎麼傳視頻 發布:2025-07-08 04:03:26 瀏覽:914
oracle測試sql 發布:2025-07-08 03:16:54 瀏覽:974
php壁紙源碼 發布:2025-07-08 03:04:26 瀏覽:321
android應用層 發布:2025-07-08 02:42:32 瀏覽:301
大唐存儲銷量 發布:2025-07-08 02:41:11 瀏覽:582
腳本怎麼打開 發布:2025-07-08 02:41:06 瀏覽:822
貴州電信iPtv升級伺服器地址 發布:2025-07-08 02:38:48 瀏覽:412
電腦怎麼鏈接本地伺服器 發布:2025-07-08 02:34:22 瀏覽:147
android調試webview 發布:2025-07-08 02:26:28 瀏覽:358