2013-04-12 31 views
0

任何人都可以請我指導我在我的應用程序中實現以下功能,我是Android開發中的新手,並且想嘗試藍牙技術。使用android中的藍牙傳輸數據

我有一個應用程序創建業務或個人卡(具有所有信息) 並將它們作爲Json字符串存儲在數據庫中。

現在,我想把這張卡片(相應的JSON字符串)發送給其他用戶(他也有我的應用程序通過藍牙)。

現在,我知道該怎麼辦喜歡簡單的東西,打開,關閉藍牙,發現設備並顯示給用戶(從那裏用戶可以選擇他想要的卡發送設備)

現在,我應該怎麼做其餘的事情呢? 那就是:

1)其實發送json字符串? 任何人都可以提出一個很好的教程,實際上一些數據通過 藍牙傳輸。

2)現在,當數據傳輸到用戶的手機時,應由我的應用程序處理。這是將被接收的字符串應該存儲在應用程序的數據庫中。但是,我的應用程序如何知道通過藍牙接收的數據與應用程序有關。 (我的意思是,任何其他應用程序的任何類型的數據都可以通過藍牙傳輸,但我的應用程序如何知道我的應用程序中的字符串(卡)已被接收)。我認爲它必須與bradCast intent或BroadCAst接收器做些什麼?

但是我應該如何實現呢?

如果接收方的應用程序沒有運行並且卡被髮送給它,該怎麼辦? 我的應用程序應該如何響應並將卡片存儲在應用程序的數據庫中?

3)什麼是UUID?我是否需要它用於我的應用程序?

謝謝!

回答

0
  1. 如果你企圖兩款Android設備之間的通信,然後樣品BluetoothChat碼最好是瞭解基本的通信... Helpul鏈接::: link1link2
  2. 區分發送的數據:: 在烏拉圭回合的應用u能對收到信息檢查頭如下接收數據檢查頭TAT MSG是否涉及烏爾應用

例如::使用報頭烏爾MSG和在另一端

public static boolean isValidHeader(EnhancedByteBuffer paramEnhancedByteBuffer) 
{ 
boolean bool = false; 
    while (true) 
    { 

    paramEnhancedByteBuffer.order(ByteOrder.LITTLE_ENDIAN); 
    int i = paramEnhancedByteBuffer.position(); 
    long l = paramEnhancedByteBuffer.getUint32(); 
    int k = paramEnhancedByteBuffer.getUint16(); 
    paramEnhancedByteBuffer.position(i); 
    if ((l == userdefined1) && (k =userdefined2) 
    bool = true; 
     return bool; 
    } 
} 

這裏userdefined1userdefined2可以是u使用區分烏爾味精, 如果返回true一些價值的理解達其烏爾應用味精別的不..

3.UUID是128的不可變表示位通用唯一標識符(UUID)。是的,你需要它爲你的應用程序Extra details on UUID

+0

刪除布爾bool = false和bool = true行。然後只是返回true/false – dcow