Java 如何从android手机时代获取国家名称?

Java 如何从android手机时代获取国家名称?,java,php,android,Java,Php,Android,嗨,我是Android开发的新手。我想根据特定手机的当前时间选择国家名称,同时单击按钮。我怎么做?有人告诉我吗?提前感谢。根据上述内容,您将获得的最接近的信息来自: 要获取时区,请查看“O”和“T”格式说明符 date()函数的。“O”会给你到格林威治的差价 时间(GMT)以小时为单位(您的时区偏移量)和“T”将为您提供 时区缩写,如东部标准时间的“EST” e、 g.将为您提供正在执行的PHP脚本时区,对于用户timezome,您可以将其日期/时间作为第二个参数传递。根据上述内容,您将获得的最

嗨,我是Android开发的新手。我想根据特定手机的当前时间选择国家名称,同时单击按钮。我怎么做?有人告诉我吗?提前感谢。

根据上述内容,您将获得的最接近的信息来自:

要获取时区,请查看“O”和“T”格式说明符 date()函数的。“O”会给你到格林威治的差价 时间(GMT)以小时为单位(您的时区偏移量)和“T”将为您提供 时区缩写,如东部标准时间的“EST”


e、 g.
将为您提供正在执行的PHP脚本时区,对于用户timezome,您可以将其日期/时间作为第二个参数传递。

根据上述内容,您将获得的最接近的时间来自:

要获取时区,请查看“O”和“T”格式说明符 date()函数的。“O”会给你到格林威治的差价 时间(GMT)以小时为单位(您的时区偏移量)和“T”将为您提供 时区缩写,如东部标准时间的“EST”


e、 g.
将为您提供正在执行的PHP脚本时区,对于用户timezome,您可以将其日期/时间作为第二个参数传递。

考虑到大多数时区包含多个国家(以及多个时区的国家)


请参阅:

考虑到大多数时区包含多个国家(以及多个时区的国家),这似乎很困难


请看:

我认为这是不可能的,因为你可以同时拥有许多国家。例如,仅以格林尼治标准时间+/-0时区为例,就可以看到英格兰、法国、西班牙、葡萄牙和其他一些非洲国家的数据。你不能那样做


我建议使用maxmindgeoip实现GEOIP位置。在PEAR中有一些非常强大的工具可用于此目的,我花了大约4个小时来设置库、理解代码并执行代码查询。我在不到4小时的时间里查询IP和国家,甚至州/省。除非你有一个和蔼可亲的:)

我认为这是不可能的,因为你可以同时拥有许多国家。例如,仅以格林尼治标准时间+/-0时区为例,就可以看到英格兰、法国、西班牙、葡萄牙和其他一些非洲国家的数据。你不能那样做


我建议使用maxmindgeoip实现GEOIP位置。在PEAR中有一些非常强大的工具可用于此目的,我花了大约4个小时来设置库、理解代码并执行代码查询。我在不到4小时的时间里查询IP和国家,甚至州/省。你不可能比这更快,除非你有一个和蔼可亲的:)

你将无法从一个时间中提取一个国家,因为许多国家在地理上跨越相同的日期/时间线。你能做的最好的事情就是获取时区,并过滤其中的国家。您需要向PHP提供最终用户的时间(例如,从他们的设备发送),然后您可以使用PHP的日期函数来解释他们所在的时区。您将无法从时间中提取一个国家,因为许多国家在地理上位于同一日期/时间线上。你能做的最好的事情就是获取时区,并过滤其中的国家。您需要向PHP提供最终用户的时间(例如从他们的设备发送),然后您可以使用PHP的日期函数来解释他们所在的时区inTimeZone tz=timezone.getDefault();字符串gmt1=TimeZone.getTimeZone(tz.getID()).getDisplayName(false,TimeZone.SHORT);字符串gmt2=TimeZone.getTimeZone(tz.getID()).getDisplayName(false,TimeZone.LONG);Log.d(“标签”,“时区:+gmt1+”\t“+gmt2”);时区tz=TimeZone.getDefault();字符串gmt1=TimeZone.getTimeZone(tz.getID()).getDisplayName(false,TimeZone.SHORT);字符串gmt2=TimeZone.getTimeZone(tz.getID()).getDisplayName(false,TimeZone.LONG);Log.d(“标签”,“时区:+gmt1+”\t“+gmt2”);