2016-07-20 7 views
0

Ich habe versucht, Eddystone-URL mit diesem Code zu übertragen:AltBeacon - Probleme mit Eddystone-URL Sende- und Chrome Physical Web

try 
{ 
    byte[] urlBytes = UrlBeaconUrlCompressor.compress("http://google.com"); 
    Identifier encodedUrlIdentifier = Identifier.fromBytes(urlBytes, 0, urlBytes.length, false); 
    ArrayList<Identifier> identifiers = new ArrayList<Identifier>(); 
    identifiers.add(encodedUrlIdentifier); 
    Beacon beacon = new Beacon.Builder() 
      .setIdentifiers(identifiers) 
      .setManufacturer(0x0188) 
      .setTxPower(-7) 
      .build(); 
    BeaconParser beaconParser = new BeaconParser().setBeaconLayout(BeaconParser.EDDYSTONE_URL_LAYOUT); 
    BeaconTransmitter beaconTransmitter = new BeaconTransmitter(getApplicationContext(), beaconParser); 
    beaconTransmitter.setAdvertiseTxPowerLevel(AdvertiseSettings.ADVERTISE_TX_POWER_HIGH); 
    beaconTransmitter.setAdvertiseMode(AdvertiseSettings.ADVERTISE_MODE_LOW_LATENCY); 
    beaconTransmitter.startAdvertising(beacon, new AdvertiseCallback() 
    { 
     @Override 
     public void onStartFailure(int errorCode) 
     { 
      Log.e(TAG, "Advertisement start failed with code: " + errorCode); 
     } 

     @Override 
     public void onStartSuccess(AdvertiseSettings settingsInEffect) 
     { 
      Log.i(TAG, "Advertisement start succeeded."); 
     } 
    }); 
} 
catch (MalformedURLException e) 
{ 
    Log.d(TAG, "That URL cannot be parsed"); 
} 

Ich bin in der Lage zu sehen zu übertragen Leuchtfeuer auf meinem zweites Gerät mit dieser App : https://play.google.com/store/apps/details?id=com.uriio&hl=pl

Aber dieses Beacon ist in Chrome Physical Web auf meinem zweiten Gerät nicht sichtbar. Wenn ich die BeaconToy-App zur Übertragung von Eddystone-URL-Beacons verwendet habe, hat mein zweites Gerät diesen Beacon sowohl in Chrome Physical Web als auch in BeaconToy gefunden.

Habe ich etwas in meinem Übertragungscode oder ist es ein Fehler in altbeacon?

Antwort