我正在编写一个显示Google地图的活动,并通过获取调用意图的额外值,在地图上的给定地理位置上放置一些叠加层。
我所做的是创建一个包装类来保存(lat,lng)对并实现Parcelable,这样我就可以将Intent上的“geopoint”实例从其他应用程序中的其他活动传递给此活动。
现在我坚持的是我应该把它作为推杆和获得这个地点的关键价值?
我可以像使用它一样:
i.putExtra("myGeoPoint", myGeoPoint);
但我猜这将是不好的做法,我可以有一个最终的静态String类成员对象作为键值,但后来我不是100%确定我可以从其他应用程序中的其他活动访问它。
如何正确完成?
答案 0 :(得分:2)
但我猜这将是不好的做法
好吧,它必须是一个字符串。
我可以将最终的静态String类成员对象作为键值,但是我不能100%确定我可以从其他应用程序中的其他活动访问它...
100%确定您无法“从其他应用程序中的其他活动访问它”。
因此,请使用众所周知的字符串。如果需要,每个应用程序都可以将该字符串保存在“最终的静态String类成员对象”中,以供自己的本地使用。或者,您可以创建一个小JAR文件,所有这些项目都使用它,或许还有其他东西,提供规范的“最终静态String类成员对象”供他们所有人参考。