<Android开发> Android系统开发-GNSS流程分析及实现

<Android开发> Android系统开发-GNSS流程分析及实现

前言
对于安卓设备来说GNSS这个功能是必不可少的。手机、电子手表、汽车等设备都需要定位信息。GNSS涉及的有北斗、GPS、伽利略等卫星系统,GNSS设备获取到卫星信息并通过相关服务程序传送到上层应用程序。下面讲解在安卓系统中,GNSS中间部分功能,及GNSS有关的相关服务程序。

GNSS的整体流程如下:
GNSS设备 → 串口(或SPI/IIC等) → 串口(或SPI/IIC等) 驱动程序 →HAL层 → JNI 层 → java服务层 → 上层应用APP

GNSS设备:具体的GNSS芯片或模块设备;
串口(或SPI/IIC等):一般只需添加设备树节点;
串口(或SPI/IIC等) 驱动程序:一般源码都会自带这类常用的驱动程序;
HAL层 :一般模块设备厂商会提供;
JNI 层 :一般模块设备厂商会提供,与HAL层一起提供;
java服务层:安卓系统自带;
上层应用APP:用户开发;

1 GNSS 的java服务层
下面先分析java服务层部分,这部分由安卓系统自带或代码基线厂商会修改后随安卓源码一起发布。

1.1 GNSS的java服务启动入口
在SystemServer.java中添加定位服务并通过systemrunning开启;流程如:
run@SystemServer → startOtherServices() → locationF.systemRunning()

你可能感兴趣的:(Android开发,高通8155开发,android,java,gnss)