2

イベント バックグラウンド モードで ble デバイスを使用しています。したがって、このために info.plist に特別な指定はしません。

ここで2つの問題があります:

1) iOS 5.1.1 では、イベントはアクセサリ名なしで表示されます。したがって、アプリケーションがバックグラウンドにあるときにbleからのイベントが発生すると、「」アクセサリが「MyAppName」を開きたいと表示されます

しかし、

- (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI 

Peripheral.nameプロパティに名前が表示され、advertisingData にはキー kCBAdvDataLocalName @"MyDeviceName" も含まれてます

2) iOS 6.0.1 以降では、イベントがバックグラウンドから発生することはありません...

私は ti cc2540 スタックを使用しています。これはアドバタイズ用の構造体です。

// GAP - SCAN RSP data (max size = 31 bytes)
static const uint8 scanRspData[] =
{
  // complete name
  0x05,   // length of this data
  GAP_ADTYPE_LOCAL_NAME_COMPLETE,
  'O',   
  'b',   
  'd',   
  '2',       
  // connection interval range
  0x05,   // length of this data
  GAP_ADTYPE_SLAVE_CONN_INTERVAL_RANGE,
  LO_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ),   // 100ms
  HI_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ),  
  LO_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ),   // 1s
  HI_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ),  

  // Tx power level
  0x02,   // length of this data
  GAP_ADTYPE_POWER_LEVEL,
  0       // 0dBm  
};


static const uint8 advertData[] = 
{      
  0x02,   // length of this data
  GAP_ADTYPE_FLAGS,
  DEFAULT_DISCOVERABLE_MODE | GAP_ADTYPE_FLAGS_BREDR_NOT_SUPPORTED,

  // service UUID, to notify central devices what services are included
  // in this peripheral
  0x03,   // length of this data
  GAP_ADTYPE_16BIT_MORE,      // some of the UUID's, but not all
  LO_UINT16( RPC_SERVICE_UUID ),
  HI_UINT16( RPC_SERVICE_UUID ),
  0x05,   // length of this data
  GAP_ADTYPE_LOCAL_NAME_COMPLETE,
  'O',   // 'O'
  'b',   // 'b'
  'd',   // 'd' 
  '2' //2
};

どうしたの?助けてください

4

1 に答える 1

4

info.plistでバックグラウンドモードを指定する必要があります.....

の下Required Background Modesに、"App shares data using CoreBluetooth"または"App communicates using CoreBluetooth"... (アプリの機能に必要なものに応じて、または両方) を入力します。

その後、バックグラウンド イベントを受け取ることができます。

于 2013-03-28T22:45:25.630 に答える