使用本SDK需要用定位功能,故这里提供三个版本选择
tips: 都是Android Studio 来配置工程,并通过Gradle集成SDK
1、在Project的build.gradle文件中配置repositories,添加maven或jcenter仓库地址
maven { url "https://raw.github.com/ipchaxun/mavn-sdk/master/" }
2、在主工程的build.gradle文件配置dependencies
SDK版本 | 引入代码 |
---|---|
百度定位版本 | implementation 'com.manyou.ipchaxun:ipchaxunlibrary-baidu:1.0.1' |
高德定位版本 | implementation 'com.manyou.ipchaxun:ipchaxunlibrary-gaode:1.0.1' |
系统定位版本 | implementation 'com.manyou.ipchaxun:ipchaxunlibrary-google:1.0.1' |
1、初始化
在Application中初始化
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
IpChaxunHelper.init(this);
}
}
2、查询类的初始化
IpChaxunHelper helper =new IpChaxunHelper(this, new IpCallBackListens() {
@Override
public void onSuccess(IPInfo info) {
Log.e("TAG","info:"+info);
}
@Override
public void Faild(String errorType, String errorDetail) {
Log.e("TAG"," Faild:"+errorType);
}
});
还有一个构造函数添加了 isUseAfterStopLocation 判断是否需要获取ip后就停止获取定位
3、获取本地ip信息
helper.getIP();
在相关配置正确、以及权限授予情况下,返回结果如下:
返回结果是
com.manyou.ipchaxun.IPInfo
字段说明
isOK //是否查询到结果
ip //查询到的ip
country //国家
province //省份
city //所在的城市
isp //网络类型
以下是查询到结果toString() 后的字符串
220.181.38.148 中国 北京市北京市 电信
错误信息说明
ERROR_NO_PERMISSION //没有相关权限\
ERROR_NEED_INSTALL_BAIDU_SDK //没有安装百度SDK
ERROR_NEED_INSTALL_GAODE_SDK //没有安装高德SDK
ERROR_GET_IP // 获取ip失败
ERROR_INIT_FALT_LOCATION //初始化定位失败
ERROR_NEED_USER_OPEN_GPS 需要打开GPS才能获取IP
ERROR_LOCATION_TIMEOUT //定位超时 用于google版本在国内获取不到的情况