真机缺少com.google.android.maps.jar解决方法:
原文:http://kb.cnblogs.com/a/1652230
写了个基于google map api的应用,模拟器一直都顺利,移植到真机时由于真机没有com.google.android.maps.jar包一直运行不了,直到搜到此贴。
重点在这部分:
手机终端需要支持Google Add-ons
作为与Google合作的手机终端的制造商,如果想在自己的Android终端中集成Google的一些应用,例如map,market,picasa,sync等,需要和Google签约,这样Google会有专人帮你将这一系列服务整合到你的平台中来。
作为没有和Google合作的手机终端的制造商,我们可以使用破解的方法将Add-ons中的运行库整合到自己的framework中来(build到手机终端的system.img中)。操作如下:
1. 在Android中,额外支持Google Add-ons(GoogleMaps),需要将如下档案(从标准的SDK中pull出来的,也可以从GPhone中pull出来)打包进System.img。Google Add-ons只需要1--2,GoolgeMaps(Google的地图程序) 需要1--5:
1)system/framework com.google.android.maps.jar
2)system/etc/permissions com.google.android.maps.xml
3)system/framework com.google.android.gtalkservice.jar
4)system/etc/permissions com.google.android.gtalkservice.xml
5)system/app Maps.apk (Google Maps v3.0)
2.源码:Android CupcakeRelease(经测试,在donut平台同样适用。)
1)编译源码(为了生成out/target目录中Android最原始的东西)
2)将以上文件加入out/target/product/generic相应目录,在源码根目录使用makesnod打包,获得新的system.img
因此,做如下操作把模拟器(用google api的模拟器,不是sdk的)里的上面所述1-3个文件pull出来:
adb pull/system/framework/com.google.android.maps.jarF:\fatcat\adbshell\com.google.android.maps.jar
adb pull /system/etc/permissions/com.google.android.maps.xmlF:\fatcat\adbshell\com.google.android.maps.xml
adb pull system/app/Maps.apk F:\fatcat\adbshell\Maps.apk
然后usb连上你的真机,把pull出来的3个文件push进去:
adb pushF:\fatcat\adbshell\com.google.android.maps.jar/system/framework/
adb push F:\fatcat\adbshell\com.google.android.maps.xml/system/etc/permissions/
adb push F:\fatcat\adbshell\Maps.apk /system/app/
这些操作的前提是取得设备的root权限(adb remount)。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?