一直想搞明白定位数据传输从GPS模块到应用层APK的整个流程:Linux串口驱动、Android HAL、Android Framework、最终应用程序,同时也了解下每个层次都对数据做了什么限制与手脚!
这里先了解下应用层流程。
根据这个框架,GPS在应用层实现的最基本流程示例:
public class MainActivity extends Activity {
private LocationManager mLocationManager;
@Override
protected void onDestroy() {
super.onDestroy();
mLocationManager.removeUpdates(locationListener);
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/* 记得在AndroidManifest.xml文件中开启GPS相关的权限!!! */
mLocationManager = (LocationManager) getSystemSer