public class IBeacon
extends java.lang.Object
implements android.os.Parcelable
iBeacon由基于字段的三部分标识符组成 proximityUUID - 一个字符串UUID通常标识一系列信标的所有者 major - 一个16位整数,相当于群组号,同一个组里Beacon有相同的Major minor - 一个16位整数,相当于识别群组里单个的Beacon
iBeacon 发送包里包含以上这三个标识符,以及 iBeacon 的蓝牙的信息强度 RSSI UUID + Major + Minor 就构成了一个 iBeacon 的识别号
| 限定符和类型 | 字段和说明 |
|---|---|
protected java.lang.Double |
accuracy
这个数字是估计这个 iBeacon 离米有多远的估计值。
|
static android.os.Parcelable.Creator<IBeacon> |
CREATOR |
protected int |
major
一个16位整数,指示一组 iBeacons
|
protected int |
minor
一个16位整数标识一个单一的 iBeacon
|
protected java.lang.Integer |
proximity
当前 iBeacon 的距离,只可能有如下四个值
|
static int |
PROXIMITY_FAR
距离超过四米远
|
static int |
PROXIMITY_IMMEDIATE
距离不到半米远
|
static int |
PROXIMITY_NEAR
距离超过半米远,但不到四米远
|
static int |
PROXIMITY_UNKNOWN
RSSI值不佳或测量的发射功率,无法估算距离
|
protected java.lang.String |
proximityUuid
一个16字节的 UUID 通常代表拥有 iBeacon 的所有者
Example: E2C56DB5-DFFB-48D2-B060-D0F5A71096E0
|
protected int |
rssi
测量到的蓝牙设备的信号强度
|
protected java.lang.Double |
runningAverageRssi
如果有多个RSSI样本可用,则这是运行平均值
|
protected int |
txPower
RSSI 中 iBeacon 的校准测量发射功率,该值帮助帮助估计距离
|
| 构造器和说明 |
|---|
IBeacon() |
IBeacon(IBeacon otherIBeacon) |
IBeacon(java.lang.String proximityUuid,
int major,
int minor,
int txPower,
int rssi) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected static double |
calculateAccuracy(int txPower,
double rssi) |
protected static int |
calculateProximity(double accuracy) |
static IBeacon |
createIBeacon(byte[] scanData,
int rssi)
创建一个 iBeacon
|
int |
describeContents() |
boolean |
equals(java.lang.Object that)
如果两个检测到的 iBeacons 共享相同的三个标识符,则认为它们是相等的,而不管它们的距离或 RSSI
|
double |
getAccuracy() |
int |
getMajor() |
int |
getMinor() |
int |
getProximity() |
java.lang.String |
getProximityUuid() |
int |
getRssi() |
int |
getTxPower() |
int |
hashCode() |
java.lang.String |
toString() |
void |
writeToParcel(android.os.Parcel dest,
int flags) |
public static final int PROXIMITY_IMMEDIATE
public static final int PROXIMITY_NEAR
public static final int PROXIMITY_FAR
public static final int PROXIMITY_UNKNOWN
protected java.lang.String proximityUuid
protected int major
protected int minor
protected java.lang.Integer proximity
protected java.lang.Double accuracy
protected int rssi
protected int txPower
protected java.lang.Double runningAverageRssi
public static final android.os.Parcelable.Creator<IBeacon> CREATOR
public IBeacon()
public IBeacon(java.lang.String proximityUuid,
int major,
int minor,
int txPower,
int rssi)
public IBeacon(IBeacon otherIBeacon)
public double getAccuracy()
accuracypublic int getMajor()
majorpublic int getMinor()
minorpublic int getProximity()
proximitypublic int getRssi()
rssipublic int getTxPower()
txPowerpublic java.lang.String getProximityUuid()
proximityUuidpublic int hashCode()
hashCode 在类中 java.lang.Objectpublic boolean equals(java.lang.Object that)
equals 在类中 java.lang.Objectpublic static IBeacon createIBeacon(byte[] scanData, int rssi)
scanData - 实际的数据包字节rssi - T信息包的测量信号强度protected static double calculateAccuracy(int txPower,
double rssi)
protected static int calculateProximity(double accuracy)
public java.lang.String toString()
toString 在类中 java.lang.Objectpublic void writeToParcel(android.os.Parcel dest,
int flags)
writeToParcel 在接口中 android.os.Parcelablepublic int describeContents()
describeContents 在接口中 android.os.Parcelable