Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Why would I use Estimote SDK rather than native CoreLocation? #8

Closed
jeffijoe opened this issue Nov 8, 2013 · 18 comments
Closed

Why would I use Estimote SDK rather than native CoreLocation? #8

jeffijoe opened this issue Nov 8, 2013 · 18 comments

Comments

@jeffijoe
Copy link

jeffijoe commented Nov 8, 2013

Hi,

As far as I understand, the only difference between the Estimote SDK and the native CoreLocation + CoreBluetooth is that Estimote SDK only works with Estimote beacons.

Did I get it right? Or is there something else? Why would I use Estimote SDK instead of Core?

@martinklimek
Copy link
Contributor

Hi,

Estimote SDK is build based on CoreLocation framework. In addition to Core Location framework it gives you possibility to connect to particular device and updated settings like power or advertising interval. SDK gives you also some helper methods that are useful when working with beacons.

@jeffijoe
Copy link
Author

jeffijoe commented Nov 8, 2013

Aaah - so I can connect to Estimote beacons? And I can't do that with native CoreLocation?

Will there be a C# (Windows Phone, Xamarin.iOS, and Xamarin.Android) versions, too?

Can I only use Estimote SDK for Estimote beacons?

@greggS
Copy link
Contributor

greggS commented Nov 8, 2013

Hi, that's right. Estimote SDK gives you the possibility to connect to Estimote Beacons and you can't do that using Core Location.
We are currently developing SDK for Android and we have plans to do the same for Windows Phone 8.
Estimote SDK can be used with other beacons.

@greggS greggS closed this as completed Nov 8, 2013
@jeffijoe
Copy link
Author

jeffijoe commented Nov 8, 2013

Ok, great!

Any plans for a C# API that is compatible with Xamarin.iOS, Xamarin.Android and WP?

All 3 platforms can use C#, so it would make sense to have a unified API to make it easier to develop cross-platform apps.

@martinklimek
Copy link
Contributor

We are working on Android version for now and should be available by the end of the year.

@jeffijoe
Copy link
Author

jeffijoe commented Nov 8, 2013

@martinklimek Android version, as in a Java SDK, right?

I am not sure if you are familiar with Xamarin, but basically they allow you to write in C# for iOS and Android, and a lot of developers are using that platform to build native apps for all mobile OS'es. Since you will be making a Windows Phone 8 SDK, why not make a general C# SDK that works for iOS, Android and Windows Phone?

@martinklimek
Copy link
Contributor

Yes, we are working on native Android (Java) library. BLE is not very popular in android and windows phones yet, that 's why we started with iOS platform.

BTW. Isn't Xamarin using native plugins to cover such functionalities like iBeacon integration?

@jeffijoe
Copy link
Author

jeffijoe commented Nov 9, 2013

Xamarin is just a bunch of C# wrappers + toolchain for writing native apps for iOS and Android using C# - that way, you can share a lot of code between platforms.

You still use native API's though - that means you use CoreLocation, CoreBluetooth, CoreData, etc, just as you would with ObjC, except you write it in C#, and get all the benefits of the CLR (.NET/Mono), and 100% access to native API's - same goes for android.

What I am suggesting, is creating a common interface for Estimote in C#, and then create an implementation for each platform. That means that Estimote users won't have to deal with separate SDK's.

We could even use that interface within our shared code.

Xamarin is already doing this themselves; for instance, using the camera in iOS and Android. Each platform do it differently, but you dont have to care cause you got a wrapper that takes care of the gory platform specifics.

If Estimote could do this, you would attract a lot of developers.

And to answer your question: Xamarin uses native iBeacon functionality. Check their implementation of AirLocate :)

Sorry for writing a novel here.

On 08/11/2013, at 16.59, "martinklimek" notifications@github.com wrote:

Yes, we are working on native Android (Java) library. BLE is not very popular in android and windows phones yet, that 's why we started with iOS platform.

BTW. Isn't Xamarin using native plugins to cover such functionalities like iBeacon integration?


Reply to this email directly or view it on GitHub.

@mdfGit
Copy link

mdfGit commented Nov 9, 2013

I agree - I would be looking to Xamarin for enabling this on cross-platform
devices more quickly. While Xamarin isn't the best solution for complex
UIs, it perfect for abstracting simple and ubiquitous features of the
device. I would definitely consider prioritizing a C# library for Xamarin
on the roadmap.

On Fri, Nov 8, 2013 at 6:20 PM, Jeff Hansen notifications@github.comwrote:

Xamarin is just a bunch of C# wrappers + toolchain for writing native apps
for iOS and Android using C# - that way, you can share a lot of code
between platforms.

You still use native API's though - that means you use CoreLocation,
CoreBluetooth, CoreData, etc, just as you would with ObjC, except you write
it in C#, and get all the benefits of the CLR (.NET/Mono), and 100% access
to native API's - same goes for android.

What I am suggesting, is creating a common interface for Estimote in C#,
and then create an implementation for each platform. That means that
Estimote users won't have to deal with separate SDK's.

We could even use that interface within our shared code.

Xamarin is already doing this themselves; for instance, using the camera
in iOS and Android. Each platform do it differently, but you dont have to
care cause you got a wrapper that takes care of the gory platform
specifics.

If Estimote could do this, you would attract a lot of developers.

And to answer your question: Xamarin uses native iBeacon functionality.
Check their implementation of AirLocate :)

Sorry for writing a novel here.

On 08/11/2013, at 16.59, "martinklimek" notifications@github.com
wrote:

Yes, we are working on native Android (Java) library. BLE is not very
popular in android and windows phones yet, that 's why we started with iOS
platform.

BTW. Isn't Xamarin using native plugins to cover such functionalities
like iBeacon integration?


Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHubhttps://github.com//issues/8#issuecomment-28109084
.

@jeffijoe
Copy link
Author

jeffijoe commented Nov 9, 2013

Anything you can do with ObjC and Java for their respective platforms, you can do with C# - including UI :)

Sent from my iPhone

On 09/11/2013, at 17.58, "Mark Ferry" notifications@github.com wrote:

I agree - I would be looking to Xamarin for enabling this on cross-platform
devices more quickly. While Xamarin isn't the best solution for complex
UIs, it perfect for abstracting simple and ubiquitous features of the
device. I would definitely consider prioritizing a C# library for Xamarin
on the roadmap.

On Fri, Nov 8, 2013 at 6:20 PM, Jeff Hansen notifications@github.comwrote:

Xamarin is just a bunch of C# wrappers + toolchain for writing native apps
for iOS and Android using C# - that way, you can share a lot of code
between platforms.

You still use native API's though - that means you use CoreLocation,
CoreBluetooth, CoreData, etc, just as you would with ObjC, except you write
it in C#, and get all the benefits of the CLR (.NET/Mono), and 100% access
to native API's - same goes for android.

What I am suggesting, is creating a common interface for Estimote in C#,
and then create an implementation for each platform. That means that
Estimote users won't have to deal with separate SDK's.

We could even use that interface within our shared code.

Xamarin is already doing this themselves; for instance, using the camera
in iOS and Android. Each platform do it differently, but you dont have to
care cause you got a wrapper that takes care of the gory platform
specifics.

If Estimote could do this, you would attract a lot of developers.

And to answer your question: Xamarin uses native iBeacon functionality.
Check their implementation of AirLocate :)

Sorry for writing a novel here.

On 08/11/2013, at 16.59, "martinklimek" notifications@github.com
wrote:

Yes, we are working on native Android (Java) library. BLE is not very
popular in android and windows phones yet, that 's why we started with iOS
platform.

BTW. Isn't Xamarin using native plugins to cover such functionalities
like iBeacon integration?


Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHubhttps://github.com//issues/8#issuecomment-28109084
.


Reply to this email directly or view it on GitHub.

@martinklimek
Copy link
Contributor

Thanks guys for that feedback! We are definitely going to consider Xamarin support in our roadmap.

@woutercx
Copy link

woutercx commented Dec 6, 2013

Here they are! Xamarin bindings for the Estimote iOS SDK:
https://github.com/mono/monotouch-bindings/tree/master/Estimote

Including the Proximity demo translated to C#.

@ictoamids
Copy link

Along these same lines... is there (or are there plans for) an Air Native
Extension version? It would be tremendously helpful for us Flash / Flex
developers.

Thanks.

David Lance

On Fri, Dec 6, 2013 at 8:37 AM, woutercx notifications@github.com wrote:

Here they are!
https://github.com/mono/monotouch-bindings/tree/master/Estimote


Reply to this email directly or view it on GitHubhttps://github.com//issues/8#issuecomment-29998404
.

@heritage1101
Copy link

Would also be very interested if there are plans for an Air Native Extension.

@rudyvdblom
Copy link

Hi, I've developed an IBeacon AIR native extension for iOS. It is not a dedicated Estimote one, but you can still monitor for and find them. A dedicated estimote ane will be developed in the near future. Check it out at: http://www.caffaware.com/archives/469

@martinklimek
Copy link
Contributor

That is awesome. Thanks for letting us know!

Sent from my iPhone

On 09 Feb 2014, at 23:12, rudyvdblom notifications@github.com wrote:

Hi, I've developed an IBeacon AIR native extension for iOS. It is not a dedicated Estimote one, but you can still monitor for and find them. A dedicated estimote ane will be developed in the near future. Check it out at: http://www.caffaware.com/archives/469


Reply to this email directly or view it on GitHub.

@painschen
Copy link

Hello rudyvdblom, whiy is your extension offline? It would help me so much :)
Does anyone downloaded it and could send it to me?

@mattleibow
Copy link

I know this is old, but just for reference for Xamarin platforms:
Xamarin.iOS: http://components.xamarin.com/view/estimotesdkios
Xamarin.Android: http://components.xamarin.com/view/estimotesdk

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants