在本教程中,我们将通过构建一个简单的过程beacon-enabled Android应用,解释的基本概念,信标技术的可能性和局限性。
这个主要的主体是机场的app。您可以下载教程的完整源代码并跟进。
目录
预备知识
创建一个灯塔项目
添加Estimote SDK
运行时权限(Android 6.0)
关键的外卖
预备条件
1 x计算机与Android studio。
1 xandroid设备版本是Android 4.3或以上。
1 x Estimote帐号(注册)。
1或多个Estimote信标。
创建一个灯塔项目
1、首先创建一个新的Android项目。最小SDK设置为18
2、Add Estimote SDK
在您的app应用上的gradle添加
dependencies{
compilefileTree(dir:'libs',include:['*.jar'])
compile'com.android.support:appcompat-v7:23.0.1'
// add the following line, and replace "0.10.4" with the latest version// of Estimote Android SDK; you'll find the latest version number on:// https://github.com/Estimote/Android-SDK/releases
compile'com.estimote:sdk:0.10.4@aar'
}
然后Sync Now
3、运行权限 (Android 6.0)
添加ACCESS_COARSE_LOCATION(wifi)权限,详情查询6.0权限添加
不能主动取获取权限,比如wifi、位置等,但是你可以调用SystemRequirementsChecker.checkWithDefaultDialogs(this);
来告诉用户需要这个权限。这样就会用默认系统的dialog的形式提示用户需要用到ACCESS_COARSE_LOCATION
在您的mainactivity中
@Override
protected void onResume()
{
super.onResume();
SystemRequirementsChecker.checkWithDefaultDialogs(this);
}
关键总结
1、Android SDK Estimote添加到您的项目中,声明这是一个在“构建依赖。gradle”文件。
2、虽然Estimote SDK要求应用程序请求蓝牙和互联网权限功能,它可以自动照顾。你不需要声明这些。
3、从Android 6.0开始,你还需要为你的应用权限请求位置能够发现信标,并在运行时必须要求这些权限。使用一个SystemRequirementsChecker辅助方法这样做。