MacBook'umun iBeacon olmasını sağlamak mümkün mü?


14

MacBook'umun iBeacon olmasını sağlamak mümkün ?

Kendisini iBeacons'ı destekleyen iOS cihazlarına yayınlamasını istiyorum. Bu mümkünse, bilgisayarın donanım gereksinimleri nelerdir (örneğin, Bluetooth 4.0 yeterli mi?) Ve nasıl yaparım?

Güncelleme : Öncelikle bunu herhangi bir ek donanım olmadan yapmanın bir yolunu arıyorum (MacBook'umda Bluetooth yerleşik olduğundan).


Benzer bir soru için stackoverflow.com/a/19741615/35690 adresine bakın .
14'te

Yanıtlar:


6

Bir programcıysanız, bir MacBook'u Mavericks ile iBeacon olarak nasıl kullanacağınıza dair talimatlar gönderdim. Talimatları blogumda http://www.blendedcocoa.com/blog/2013/11/02/mavericks-as-an-ibeacon/ adresinde bulabilirsiniz.

Bir şansım olursa / iBeacon'un reklamını yapmak için kullanabileceğiniz bir uygulama oluşturabilirim.

Stack Overflow ile ilgili benzer bir soruya verdiğim cevap bu


Mavericks, Core 7'de iOS 7'ye eklenen iBeacon desteğine sahip değil. Ancak Mavericks artık BLE çevre birimi aygıtı olarak işlev görebiliyor. Bir iBeacon'un temelde bir çevre birimi olduğu göz önüne alındığında, Mavericks'i bir iBeacon olarak kullanmak mümkün olmalıdır (ve gerçekten de mümkündür).

İOS'ta bir iBeacon oluşturmak için önce bir CLBeaconRegionnesne oluşturur ve ardından yayınlamak için gerekli reklam verilerini içeren peripheralDataWithMeasuredPower:bir yöntem elde etmek için yöntemi kullanırsınız NSDictionary. Bunun içeriğini NSDictionarybir iOS cihazından alıp Mavericks'te kullanırsanız, bir iBeacon alırsınız.

Bunu kolaylaştırmak için bir sınıf oluşturdum ve reklam verisi sözlüğünü doğrudan Mavericks üzerinde oluşturmanıza izin verdim. Kaynak kodu https://github.com/mttrb/BeaconOSX adresinde bulabilirsiniz.

BLCBeaconAdvertisementDataSınıf almak proximityUUID, major, minorgeçirilebilir bir NSDictionary ve kalibre güç değerleri ve yaratan startAdvertising:yöntemi CBPeripheralManagerMavericks.

BLCBeaconAdvertisementDataSınıf oldukça basit. Ana çalışma aşağıdaki yöntemle yapılır:

- (NSDictionary *)beaconAdvertisement {
    NSString *beaconKey = @"kCBAdvDataAppleBeaconKey";

    unsigned char advertisementBytes[21] = {0};

    [self.proximityUUID getUUIDBytes:(unsigned char *)&advertisementBytes];

    advertisementBytes[16] = (unsigned char)(self.major >> 8);
    advertisementBytes[17] = (unsigned char)(self.major & 255);

    advertisementBytes[18] = (unsigned char)(self.minor >> 8);
    advertisementBytes[19] = (unsigned char)(self.minor & 255);

    advertisementBytes[20] = self.measuredPower;

    NSMutableData *advertisement = [NSMutableData dataWithBytes:advertisementBytes length:21];

    return [NSDictionary dictionaryWithObject:advertisement forKey:beaconKey];
}

Bununla ilgili daha ayrıntılı bir blog yayınım var http://www.blendedcocoa.com/blog/2013/11/02/mavericks-as-an-ibeacon/


4

1) MacBook'unuza takmak / takmak için bir bluetooth 4.0 BLE (Bluetooth Düşük Enerji) verici / alıcı yonga seti almanız gerekir.

Bu, işaret sinyalini iletmenizi sağlar.

2) Yonga setini uygun şekilde kullanabilen bir yazılım oluşturmanız veya satın almanız gerekir.

Bu, yeni iPhone'lar gibi yakındaki işaret özellikli cihazların varlığını tanımanıza ve onlarla uygun şekilde etkileşime girmenize olanak tanır.

İşte bazı iyi örnek videolarla iBeacons ve BLE hakkında daha fazla açıklayan bir site (aslında orijinal sorudaki 'iBeacon' ile bağlantılı):

Apple'ın iBeacons açıklaması - Nedir ve neden sinirleniyor - Pocket-lint

Ticari olarak kullanılmak üzere BLE vericisi / alıcıları satan bir şirketin bağlantısı (yukarıdaki makalede belirtilmiştir). Bu site aynı zamanda teknolojinin nasıl çalıştığı hakkında genel bir bakış sunmaktadır:

Tahmin İşaretleri - uygulamalarınız için gerçek dünya bağlamı

Bu site BLE hakkında ayrıntılı bilgi vermektedir:

Düşük Enerji | Bluetooth Teknolojisi Web Sitesi

O zaman söyleyebilirim, mühendislik şapkanızı takın ve yonga setleri ve yazılım çözümleri aramaya başlayın!

İyi eğlenceler!

Düzenle:

BLE için başka bir isim Bluetooth Smart'tır. Bluetooth Smart (yalnızca BLE yapar) veya Bluetooth Smart Ready (hem eski bluetooth hem de BLE yapar) donanım ve / veya yazılım arayın. Bazı listeler Bluetooth Teknolojisi Web Sitesindedir (yukarıdakiyle aynıdır) ve Google araması daha önce oluşturulmuş birkaç uygulamayı getirir.

Başka bir arama, Apple geliştiricileri için bir belge getiriyor:

Apple'ın Bluetooth Tasarım Yönergeleri (geliştirici merkezlerinden)

ve Apple geliştiricileri için hızlı bir geliştirme aracı (bluetooth.org'dan):

Apple Geliştiricileri | Bluetooth Geliştirme Portalı


Üzgünüm, açıklığa kavuşmalıydım, harici donanım gerektirmeyen bir çözüm arıyorum. Bazı MacBook'larda zaten Bluetooth 4.0 yerleşik olduğundan, daha fazla donanım eklemek yerine bunu kullanabilen bir çözüm olduğunu umuyordum.
Duygusal

Gereksinimler aynıdır - bu nedenle MacBook'unuz Bluetooth Smart Ready'dir. Şimdi, teknolojiden yararlanmak için yazılım bulmanız (veya kendi yazılımınızı yazmanız) gerekiyor.
leanne

Ek araştırmalara yardımcı olmak için cevabıma bazı bağlantılar ve daha fazla bilgi ekledim.
leanne

2

MactsAsBeacon adlı küçük bir araç kullanıyorum. Tüm yapmanız gereken .app dosyasını indirip açmaktır. Daha sonra UUID, Major, Minor ve Power değerlerini ayarlamanıza izin verir.

https://github.com/timd/MactsAsBeacon


Güzel bulmak! Bu soruna mükemmel bir uyum.
Ian C.

0

İBeacon gibi çalışacak bir VM oluşturun.

http://developer.radiusnetworks.com/ibeacon/virtual.html

:)


Bunu bir cevap olarak gönderdiniz, bu sadece sorulan soruya doğrudan cevap veren şeyler içindir.
Daniel

OP'nin istemediği harici bir donanıma ihtiyaç duyduğuna inanmama rağmen bu cevap soru ile ilgilidir. Makalede sanal makineyi kullanmak size bir MacBook üzerinde çalışan bir iBeacon verecektir.
mttrb
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.