标题 | 阅读 | 评论 | 转发 | 发布日期 | |
---|---|---|---|---|---|
android恢复出厂设置以及系统升级流程 | 2694 | 1 | 1 | 2010-02-05 | |
android 启动过程分析 | 1099 | 0 | 0 | 2009-05-22 | |
wifi子系统分析 | 1198 | 1 | 0 | 2009-05-22 | |
android 数据库流程分析 | 1184 | 1 | 0 | 2009-05-11 | |
Android 虚拟机 Dalvik | 657 | 0 | 0 | 2009-05-08 | |
包管理系统分析 | 1602 | 0 | 0 | 2009-05-06 | |
Android的IPC机制Binder的各个部分 | 1769 | 0 | 0 | 2009-05-05 | |
Android电源管理 | 839 | 0 | 0 | 2009-04-29 | |
第一个驱动-按键点亮LED(基于linux-2.6.22) | 782 | 0 | 0 | 2009-04-29 | |
简述Android触摸屏手势识别 | 1450 | 0 | 0 | 2009-04-29 | |
context 服务分析 | 466 | 0 | 0 | 2009-04-28 | |
电源管理子系统 | 466 | 0 | 0 | 2009-04-28 | |
文件系统分析 | 477 | 0 | 0 | 2009-04-28 | |
JNI 机制分析 | 860 | 0 | 0 | 2009-04-28 | |
语言设置分析 | 617 | 0 | 0 | 2009-04-28 | |
窗口管理器 | 874 | 0 | 0 | 2009-04-28 | |
按键,触摸屏流程分析 | 1109 | 0 | 0 | 2009-04-28 | |
Android 通信机制分析 | 1077 | 0 | 0 | 2009-04-28 | |
Android init 启动过程分析 | 2300 | 0 | 0 | 2009-04-02 |
chinaunix网友2009-12-28 08:03
分析文件: hardware/libhardware_legacy/gps/Android.mk =============================== # Use hardware GPS implementation if available. # ifneq ($(BOARD_GPS_LIBRARIES),) LOCAL_CFLAGS += -DHAVE_GPS_HARDWARE LOCAL_SHARED_LIBRARIES += $(BOARD_GPS_LIBRARIES) endif # Use emulator GPS implementation if QEMU_HARDWARE is set. # USE_QEMU_GPS_HARDWARE := $(QEMU_HARDWARE) ifeq ($(USE_QEMU_GPS_HARDWARE),true) LOCAL_CFLAGS += -DHAVE_QEMU_GPS_HARDWARE LOCAL_SRC_FILES += gps/gps_qemu.c endif LOCAL_SRC_FILES += gps/gps.cpp =============================== 因为文件 hardware/libhardware_legacy/Android.mk 中有: ifneq ($(TARGET_SIMULATOR),true) LOCAL_CFLAGS += -DQEMU_HARDWARE QEMU_HARDWARE := true endif 当编译的是模拟器版本的时候 QEMU_HARDWARE 为true,所以使用的是模拟的gps调用。 如果编译相关的硬件版本,那么必须给 BOARD_GPS_LIBRARIES 赋值,因为从语句: LOCAL_SHARED_LIBRARIES += $(BOARD_GPS_LIBRARIES) 可以看出,变量 BOARD_GPS_LIBRARIES 指定的应该是一个库的名称,通常为 libgps,也可以自定义 对于变量 BOARD_GPS_LIBRARIES 我们可以在文件: vendor/marvell/littleton/BoardConfig.mk 或者 vendor/htc/dream-open/BoardConfig.mk 里面进行指定。 BOARD_GPS_LIBRARIES := libgps librpc BOARD_GPS_LIBRARIES := libgps 指定变量 BOARD_GPS_LIBRARIES 表明我们依赖的是外部库 libgps.so,所以我们还必须 准备一个libgps.so 库,由它完成实际的gps调用 ======================== libgps.so 是gps接口: ./hardware/libhardware_legacy/include/hardware_legacy/gps.h 的实现,所以根据不同的硬件,libgps.so的实现方式是不一样的,但是接口一致。 关于怎样添加一个 gps 库,可以参考文档: http://www.netmite.com/android/mydroid/cupcake/development/pdk/docs/gps.html
chinaunix网友2009-10-19 17:29
您好 ~~ 看過您的"Location服务分析"一文之後,想請問您一個問題,在"获取gps接口"那邊,如果有硬件的話,要如何讓整個流程是調用 #ifdef HAVE_GPS_HARDWARE sGpsInterface = gps_get_hardware_interface(); #endif if (!sGpsInterface) LOGD("no GPS hardware on this device\n"); } 而不是調用 #ifdef HAVE_QEMU_GPS_HARDWARE if (qemu_check()) { sGpsInterface = gps_get_qemu_interface(); if (sGpsInterface) { LOGD("using QEMU GPS Hardware emulation\n"); return; } } #endif 很抱歉打擾到您了
chinaunix网友2009-09-27 15:15
你好。我深圳的一家猎头公司,这里有一个深圳某公司开发网游职位,如果你本人或者你身边的同好朋友感兴趣可以发邮件或QQ:371805367和我联系xiaobin9024@sina.com 一、linux开发工程师(1人):地点(深圳)薪酬:7K~10K 职责:负责网游游戏服务器开发 1、有Unix/Linux操作系统下的C/C++项目的2年以上开发经验; 2、熟悉网络编程,精通TCP/IP协议及编程,熟悉互联网应用协议; 3、熟悉Linux下的mysql或者至少一种其他关系型数据库的开发; 4、有网络游戏后台开发或者分布式开发经验者优先;