diff --git a/.gitignore b/.gitignore index c69b04e..da5cec2 100644 --- a/.gitignore +++ b/.gitignore @@ -112,4 +112,6 @@ ComponentStore/ lib/ *.DS_Store -*.droidres.db \ No newline at end of file +*.droidres.db +/AndroidAltBeaconLibrary/.vs +/AndroidAltBeaconLibrary/.mfractor diff --git a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/AndroidAltBeaconLibrary.UnitTests.csproj b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/AndroidAltBeaconLibrary.UnitTests.csproj index e0045f4..257e2ec 100644 --- a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/AndroidAltBeaconLibrary.UnitTests.csproj +++ b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/AndroidAltBeaconLibrary.UnitTests.csproj @@ -14,7 +14,6 @@ Resource Resources Assets - true Properties\AndroidManifest.xml diff --git a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/BeaconTest.cs b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/BeaconTest.cs index 048390c..eda0247 100644 --- a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/BeaconTest.cs +++ b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/BeaconTest.cs @@ -12,7 +12,7 @@ public class BeaconTest : TestBase [SetUp] public void BeforeEachTest() { - Beacon.SetHardwareEqualityEnforced(false); + Beacon.HardwareEqualityEnforced = false; } [Test] @@ -76,7 +76,7 @@ public void TestBeaconsWithDifferentId3AreNotEqual() { [Test] public void TestBeaconsWithSameMacsAreEqual() { - Beacon.SetHardwareEqualityEnforced(true); + Beacon.HardwareEqualityEnforced = true; Beacon beacon1 = new AltBeacon.Builder().SetMfgReserved(7).SetId1("1").SetId2("2").SetId3("3").SetRssi(4) .SetBeaconTypeCode(5).SetTxPower(6) .SetBluetoothAddress("1:2:3:4:5:6").Build(); @@ -88,7 +88,7 @@ public void TestBeaconsWithSameMacsAreEqual() { [Test] public void TestBeaconsWithDifferentMacsAreNotEqual() { - Beacon.SetHardwareEqualityEnforced(true); + Beacon.HardwareEqualityEnforced = true; Beacon beacon1 = new AltBeacon.Builder().SetMfgReserved(7).SetId1("1").SetId2("2").SetId3("3").SetRssi(4) .SetBeaconTypeCode(5).SetTxPower(6) .SetBluetoothAddress("1:2:3:4:5:6").Build(); @@ -131,7 +131,7 @@ public void TestCalculateAccuracyWithRssiEqualsPowerOnInternalProperties() { [Test] public void TestCalculateAccuracyWithRssiEqualsPowerOnInternalPropertiesAndRunningAverage() { var beacon = new Beacon.Builder().SetTxPower(-55).SetRssi(0).Build(); - beacon.SetRunningAverageRssi(-55); + beacon.RunningAverageRssi = -55; double distance = beacon.Distance; AssertEx.AreEqual("Distance should be one meter if mRssi is the same as power", 1.0, distance, 0.1); } diff --git a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/SBeaconTest.cs b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/SBeaconTest.cs index 13d3f2a..9781c81 100644 --- a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/SBeaconTest.cs +++ b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/SBeaconTest.cs @@ -45,12 +45,12 @@ public SBeacon(Parcel parcel) { public String Id => Identifiers[1].ToString(); - public override int DescribeContents() + public int DescribeContents() { return 0; } - public override void WriteToParcel(Parcel @out, ParcelableWriteFlags flags) + public void WriteToParcel(Parcel @out, ParcelableWriteFlags flags) { // TODO: Implement me } diff --git a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/BeaconServiceTest.cs b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/BeaconServiceTest.cs index 6eee290..31644d2 100644 --- a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/BeaconServiceTest.cs +++ b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/BeaconServiceTest.cs @@ -9,7 +9,7 @@ public class BeaconServiceTest { [SetUp] public void before() { - BeaconManager.SetsManifestCheckingDisabled(true); + BeaconManager.ManifestCheckingDisabled = true; } /** diff --git a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/RangingDataTest.cs b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/RangingDataTest.cs index da449cc..9fd101c 100644 --- a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/RangingDataTest.cs +++ b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/RangingDataTest.cs @@ -13,7 +13,7 @@ public class RangingDataTest { [SetUp] public void before() { - BeaconManager.SetsManifestCheckingDisabled(true); + BeaconManager.ManifestCheckingDisabled = true; } [Test] diff --git a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/Scanner/ScanFilterUtilsTest.cs b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/Scanner/ScanFilterUtilsTest.cs index 154cc7f..870f554 100644 --- a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/Scanner/ScanFilterUtilsTest.cs +++ b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.UnitTests/Tests/Beacon/Service/Scanner/ScanFilterUtilsTest.cs @@ -13,7 +13,7 @@ public class ScanFilterUtilsTest [Test] public void testGetAltBeaconScanFilter() { BeaconParser parser = new AltBeaconParser(); - BeaconManager.SetsManifestCheckingDisabled(true); // no manifest available in robolectric + BeaconManager.ManifestCheckingDisabled = true; // no manifest available in robolectric var scanFilterDatas = new ScanFilterUtils().CreateScanFilterDataForBeaconParser(parser); AssertEx.AreEqual("scanFilters should be of correct size", 1, scanFilterDatas.Count); ScanFilterUtils.ScanFilterData sfd = scanFilterDatas[0]; @@ -26,7 +26,7 @@ public void testGetAltBeaconScanFilter() { public void testGenericScanFilter() { BeaconParser parser = new BeaconParser(); parser.SetBeaconLayout("m:2-3=1111,i:4-6,p:24-24"); - BeaconManager.SetsManifestCheckingDisabled(true); // no manifest available in robolectric + BeaconManager.ManifestCheckingDisabled = true; // no manifest available in robolectric var scanFilterDatas = new ScanFilterUtils().CreateScanFilterDataForBeaconParser(parser); AssertEx.AreEqual("scanFilters should be of correct size", 1, scanFilterDatas.Count); ScanFilterUtils.ScanFilterData sfd = scanFilterDatas[0]; @@ -40,7 +40,7 @@ public void testGenericScanFilter() { public void testEddystoneScanFilterData() { BeaconParser parser = new BeaconParser(); parser.SetBeaconLayout(BeaconParser.EddystoneUidLayout); - BeaconManager.SetsManifestCheckingDisabled(true); // no manifest available in robolectric + BeaconManager.ManifestCheckingDisabled = true; // no manifest available in robolectric var scanFilterDatas = new ScanFilterUtils().CreateScanFilterDataForBeaconParser(parser); AssertEx.AreEqual("scanFilters should be of correct size", 1, scanFilterDatas.Count); ScanFilterUtils.ScanFilterData sfd = scanFilterDatas[0]; @@ -51,7 +51,7 @@ public void testEddystoneScanFilterData() { public void testZeroOffsetScanFilter() { BeaconParser parser = new BeaconParser(); parser.SetBeaconLayout("m:0-3=11223344,i:4-6,p:24-24"); - BeaconManager.SetsManifestCheckingDisabled(true); // no manifest available in robolectric + BeaconManager.ManifestCheckingDisabled = true; // no manifest available in robolectric var scanFilterDatas = new ScanFilterUtils().CreateScanFilterDataForBeaconParser(parser); AssertEx.AreEqual("scanFilters should be of correct size", 1, scanFilterDatas.Count); ScanFilterUtils.ScanFilterData sfd = scanFilterDatas[0]; diff --git a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.csproj b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.csproj index 95a1932..a96dd9f 100644 --- a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.csproj +++ b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary.csproj @@ -11,7 +11,6 @@ v7.1 Resources Assets - true class-parse @@ -44,6 +43,7 @@ + @@ -55,7 +55,7 @@ - + - \ No newline at end of file + diff --git a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/Beacon.cs b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/Beacon.cs new file mode 100644 index 0000000..758787f --- /dev/null +++ b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/Beacon.cs @@ -0,0 +1,20 @@ +using System; +using Android.Runtime; + +namespace AltBeaconOrg.BoundBeacon +{ + // Metadata.xml XPath class reference: path="/api/package[@name='org.altbeacon.beacon']/class[@name='Beacon']" + public partial class Beacon + { + public int DescribeContents() + { + return 0; + } + + public void WriteToParcel(Android.OS.Parcel p, Android.OS.ParcelableWriteFlags f) + { + + } + } +} + diff --git a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/Jars/android-beacon-library-2.10.aar b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/Jars/android-beacon-library-2.10.aar deleted file mode 100644 index 3a91a11..0000000 Binary files a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/Jars/android-beacon-library-2.10.aar and /dev/null differ diff --git a/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/Jars/android-beacon-library-2.16.1.aar b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/Jars/android-beacon-library-2.16.1.aar new file mode 100644 index 0000000..9a5bb43 Binary files /dev/null and b/AndroidAltBeaconLibrary/AndroidAltBeaconLibrary/Jars/android-beacon-library-2.16.1.aar differ diff --git a/README.md b/README.md index 36844e4..2c52b79 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,8 @@ Android AltBeacon Library ![](https://ci.appveyor.com/api/projects/status/gpeioj A Xamarin.Android binding of the [AltBeacon Android Beacon Library](https://github.com/AltBeacon/android-beacon-library). This library allows Android apps to interact with BLE beacons in accordance with the open and interoperable [AltBeacon proximity beacon protocol specification](https://github.com/AltBeacon/spec). +Note: This library uses the Java library version 2.15, and is Android Oreo (8.x) compatible! + ## Use - [Nuget Package](https://www.nuget.org/packages/AndroidAltBeaconLibrary/) @@ -19,6 +21,8 @@ The [Android AltBeacon Library](http://components.xamarin.com/view/android-altbe ## Changes +[current version] - Using java library 2.15: Android Oreo compatible! + _v2.10.0 - [Work in Progress](https://github.com/chrisriesgo/Android-AltBeacon-Library/issues/25)_ [v2.7](https://github.com/chrisriesgo/Android-AltBeacon-Library/releases/tag/2.7)