2013-07-11 56 views
32

Google sắp ngừng sử dụng Latitude, cùng với API của Latitude. Nhưng họ nói on their blog rằng Lịch sử Vị trí sẽ vẫn được lưu trữ và người dùng sẽ có thể truy cập lịch sử của họ trên Trang tổng quan Lịch sử Vị trí của Google Maps. Bạn có biết liệu sẽ có bất kỳ API nào để nhận được lịch sử vị trí đó, như đã có cho Google Latitude không?Tương lai của Lịch sử vị trí trên Google API

Trả lời

8

Tôi cũng đang tìm kiếm giải pháp thay thế để lấy lại vị trí của mình từ Google.

Dưới đây là một số sự kiện:

  • Latitude sẽ được thay thế bằng việc chia sẻ vị trí trên Google+
  • thiết bị Android sẽ tiếp tục báo cáo dữ liệu vị trí để Google
  • Latitude sẽ được gỡ bỏ (API, bạn bè, trang web ...)

Nếu thiết bị vẫn gửi dữ liệu vị trí, Google sẽ cung cấp cho chúng tôi API để tìm nạp dữ liệu đó.

Tôi đã xem xét nó và vị trí của tôi được hiển thị trên tiểu sử trên G + của tôi, nhưng không có thông tin về độ chi tiết hoặc dấu thời gian. Nó chỉ nói "Vị trí hiện tại: [thành phố được mã hóa địa lý]". Mã hóa địa lý đảo ngược địa chỉ không chính xác lắm. Nếu tôi nhấp vào địa chỉ, Google Maps sẽ được mở trong một tab mới có tọa độ, điều này có vẻ khá chính xác. Vì vậy, nếu vị trí của tôi ở trên G +, tôi sẽ có thể truy cập thông qua API G +, phải không?

Vâng ..

Điều duy nhất tôi đã có thể tìm thấy được điều này:

https://developers.google.com/+/api/latest/people

"currentLocation": string, 

Như bạn có thể thấy, các dữ liệu vị trí được trả về như là một chuỗi. Tôi chưa thử nó, nhưng tôi sẽ đặt cược tiền mà nó sẽ trở lại giống như trên hồ sơ của tôi, chỉ là tên của thành phố, nhưng không chính xác hơn thế.

Ngay bây giờ nó hút. Tôi muốn nhận thông tin vị trí của mình, nếu thiết bị đã gửi nó. Cài đặt ứng dụng của bên thứ 3 trên điện thoại của tôi để cấp vị trí của tôi trên một dịch vụ khác là không cần thiết. Và đừng quên tiết kiệm pin và sử dụng dữ liệu di động.

Bước hợp lý sẽ là đặt tất cả chức năng vĩ độ vào Google+.

Chúng tôi sẽ thấy, tôi nghi ngờ điều đó.

Ngay bây giờ có vẻ như họ sẽ được cho ăn riêng tư của chúng tôi mà không cần chúng tôi có bất kỳ sự kiểm soát hay thông tin chi tiết nào về nó. :(

19

Tôi đã phát hiện ra rằng tôi có thể tự động tải lịch sử vị trí của tôi cho ngày bất kỳ bằng cách sử dụng url sau:

https://maps.google.com/locationhistory/b/0/kml?startTime=1373666400000&endTime=1373752800000

bằng cách thay đổi timestamps trong "StartTime" và "EndTime" Rất tiếc, trong dữ liệu .kml và không có dữ liệu chi tiết được bao gồm.Thôi nào, Google - Latitude có một số người dùng tận tụy tiếp tục dựa trên cơ sở hàng ngày, đừng giết nó: (

+0

này có thể về mặt kỹ thuật làm việc nhưng rất có khả năng không được phép do điều khoản dịch vụ của google. –

+0

Bất kỳ ý tưởng làm thế nào để làm điều đó lập trình? Tôi cũng cần một cách để làm điều đó. Hoặc http://whereistristan.com - sẽ chuyển sang màu tối: ( –

+0

Tôi đã tìm ra cách để lấy dữ liệu dưới dạng JSON, xem câu trả lời bên dưới. – dominik

12

Trong trường hợp bạn muốn dữ liệu có độ chính xác và không chỉ địa điểm, bạn có thể thực hiện cùng yêu cầu rằng các trang web làm. Nhìn vào thanh tra cho thấy rằng nó làm cho một yêu cầu để https://maps.google.com/locationhistory/b/0/apps/pvjson?t=0. Bạn có thể xem lại các yêu cầu tương tự với cURL (hoặc bất kỳ cách nào khác để thực hiện một yêu cầu POST).

curl 'https://maps.google.com/locationhistory/b/0/apps/pvjson?t=0' -H 'origin: https://maps.google.com' -H 'accept-encoding: gzip,deflate,sdch' -H 'x-manualheader: [SOME STRING]' -H 'accept-language: en-GB,en;q=0.8,en-US;q=0.6,de;q=0.4,pt;q=0.2' -H 'cookie: GDSESS=[COOKIE DATA]' -H 'x-client-data: [ANOTHER STRING]' -H 'user-agent: [UA STRING]' -H 'content-type: application/x-www-form-urlencoded;charset=UTF-8' -H 'accept: */*' -H 'cache-control: max-age=0' -H 'referer: https://maps.google.com/locationhistory/b/0' -H 'dnt: 1' --data '[null,[BEGIN],[END],true]' --compressed 

tôi rời ra dữ liệu cookie cá nhân của tôi và một số chi tiết (trong [..]) nhưng bạn có thể google chrome yêu cầu tạo điều này cho bạn trong bảng điều khiển dành cho nhà phát triển (nhấp chuột phải vào yêu cầu -> sao chép dưới dạng cURL). lịch sử vị trí ur dưới dạng JSON. Tuy nhiên, bạn cần phải tải xuống các phạm vi của một vài ngày và không phải tất cả mọi thứ cùng một lúc. Tôi sẽ để điều này như một bài tập cho người đọc.

+2

Đó có phải là url không – Javier

+0

@Javier tốt, đó là url mà google sử dụng để có được dữ liệu, không thực sự tài liệu – dominik

+1

Có một mô tả cho kết quả json? datapiece đầu tiên của một điểm là alwasy null. thứ ba và thứ tư lat và lon.thứ 5 khoảng cách đến điểm khởi đầu.thứ 6 sự tự tin? 7 thời gian quay lại một lần nữa? Đôi khi các điểm có một subresultset chứa null, một số chữ số và một timepoint sau ngày ghi âm. –

8

Bạn cũng có thể tải xuống dữ liệu từ Google Takeout. Tôi biết rằng đây không phải là API, mỗi lần, nhưng thậm chí nhập khẩu thủ công có lẽ tốt hơn là không có gì.

https://google.com/takeout/

+0

Nếu nhập thủ công sẽ là một tùy chọn thì tải kml từ lịch sử vị trí sẽ là câu trả lời không mang đi. – user3285954

Các vấn đề liên quan