No pain No gain

  • Archive
  • RSS
  • Ask me anything
banner

[Giới thiệu] Google Places Autocomplete API

Google Places Autocomplete API là một phần của Google Places API, chia sẻ cùng API key và quota. Do vậy mỗi request tới Google Places Autocomplete được tính như một request tới Google Places.

Google Place Autocomplete API trả về thông tin địa điểm dựa trên từ khóa tìm kiếm. Nó thường được dùng để tạo chức năng gợi ý khi người dùng nhập chuỗi ký tự vào ô tìm kiếm.

Read More

Source: code.google.com

    • #programing
    • #android
    • #google
    • #gioithieu
  • 1 year ago
  • Permalink
Share

Short URL

TwitterFacebookPinterestGoogle+

[Giới thiệu] Google Place API - Phần 2

Tình hình là ngâm bài này lâu quá rồi, sắp đến ngày bảo vệ khóa luận nên tiếp tục viết nốt cho xong :D

7. Place check-ins

Chức năng này giúp xác nhận người dùng đã đến địa điểm đó. Hoạt động check-ins có ảnh hưởng tới kết quả tìm kiếm của người dùng trong ứng dụng của bạn.

Chú ý: Chức năng Check-ins ở đây không giống với khái niệm check-ins trong bộ API của Google Maps/Lattitude.

Place Check-ins request: Là một HTTP POST request.

POST https://maps.googleapis.com/maps/api/place/check-in/json?sensor=true_or_false&key=AddYourOwnKeyHere HTTP/1.1
Host: maps.googleapis.com

{
 
"reference": "place_reference"
}

Place Check-ins response:

{
 
"status": "OK"
}

  • OK : Check-in thành công
  • UNKNOWN_ERROR: Lỗi trên server. Thử lại có thể thành công.
  • OVER_QUERY_LIMIT: Quá giới hạn được cấp.
  • REQUEST_DENIED: Request bị từ chối, thông thường có thể do bị thiếu sensor parameter.
  • INVALID_REQUEST: Request không đúng.

8. User place reports

Cho phép user có thể thêm mới hay xóa địa điểm đã tồn tại. Địa điểm mới thêm có thể tìm ngay được từ ứng dụng của bạn và sẽ được đưa vào danh sách chờ kiểm duyệt trên Google Maps trước khi các ứng dụng khác có thể truy cập.

Place report requests:

- Thêm địa điểm:

POST https://maps.googleapis.com/maps/api/place/add/json?sensor=true_or_false&key=AddYourOwnKeyHere HTTP/1.1
Host: maps.googleapis.com

{
 
"location": {
   
"lat": -33.8669710,
   
"lng": 151.1958750
 
},
 
"accuracy": 50,
 
"name": "Google Shoes!",
 
"types": ["shoe_store"],
 
"language": "en-AU"
}

Kết quả trả về khi thêm thành công là reference và id:

{
 
"status": "OK",
 
"reference": "CiQgAAAAeTQS1RtzAyVRVjHcRiIWmWeqcAl3k7bluW7GINLDULESEHozTQhy6OHJw03ziDvY1uEaFAP_vDRhK-UbWw3Gd7Ulqm3eRjIs",
 
"id": "6947fc4007436a71dbda51ef9a58627c8e8858f9"
}

- Xóa địa điểm

Một địa điểm chỉ có thể được xóa khi:

  • Được xóa bởi chính ứng dụng đã thêm vào.
  • Chưa vượt qua phần kiểm duyệt trên Google Maps.

Nếu không đáp ứng 2 yêu cầu này kết quả trả về mã lỗi: REQUEST_DENIED

POST https://maps.googleapis.com/maps/api/place/delete/json?sensor=true_or_false&key=AddYourOwnKeyHere HTTP/1.1
Host: maps.googleapis.com

{
 
"reference": "place_reference"
}



    • #android
    • #programing
    • #api
    • #google
  • 1 year ago
  • Permalink
Share

Short URL

TwitterFacebookPinterestGoogle+

[Android] Pair

EX:

List<Pair<String,List<CatDetail»> categories = new new ArrayList<Pair<String, List<Composer»>();

//Tạo 1 list danh sách category với Cat cha và các cat con ;))

    • #android
    • #programing
    • #util
    • #pair
  • 1 year ago
  • 182
  • Permalink
Share

Short URL

TwitterFacebookPinterestGoogle+

[Android] Parcelable - Chuyển dữ liệu giữa các activity

1. Giới thiệu

Nếu chúng ta chỉ cần chuyển các kiểu dữ liệu như String, integer … thì rất đơn giản. Android đã hỗ trợ sẵn:

Có thể đưa trực tiếp vào Intent:

Intent i = new Intent(this, nextActivity.class){

i.putExtra(“String”,yourString);

i.putExtra(“Integer”,yourInt);

startActivity(i);}

Hay đưa vào trong Bundle.

Nhưng với các đối tượng do ta tự định nghĩa thì mọi việc phức tạp hơn nhiều. Android không hỗ trợ chuyển trực tiếp object qua các Activity. Để thực hiện việc này có 2 cách: 1 là sử dụng Serializable, 2 là dùng Parcelable. Với cách đầu tiên thì đơn giản hơn nhưng gặp vấn đề về performance trên Android nên thường người ta khuyên không nên xài. Vì thế ở đây chúng ta sẽ tìm hiểu việc implement class Parcelable như thế nào.

Read More

    • #android
    • #programing
    • #java
    • #eclipse
    • #activity
    • #bundle
    • #data
    • #pass
  • 1 year ago
  • 107
  • Permalink
Share

Short URL

TwitterFacebookPinterestGoogle+

[Android] AsyncTask

1. Giới thiệu

Một chương trình chạy trên Android có thể sẽ có cấu trúc phức tạp. Yêu cầu kết nối đến Server, CSDL, tải file … Nếu chúng ta xử lý các công việc đó trên Main Thread sẽ làm ứng dụng có vẻ chạy chậm hay treo vì chúng làm gián đoạn việc cập nhật, xử lý trên GUI. Có nhiều cách để giải quyết vấn đề này: sử dụng Service, Thread hay đơn giản hơn là dùng Async Task (Asynchronous Task).

2. Class AsyncTask

Class này cho phép chúng ta chạy tác vụ nền và sau đó trả lại kết quả cập nhật lên GUI mà không phải động đến Thread/handler khá rắc rối và đau đầu.

Read More

    • #android
    • #programing
    • #java
    • #tut
    • #example
    • #eclipse
    • #git
    • #github
  • 1 year ago
  • 51
  • Permalink
Share

Short URL

TwitterFacebookPinterestGoogle+

[Android] Google Place API Demo

Chúng ta sẽ tạo một úng dụng demo như sau:

Chưa chạy

Lúc chạy

Đồ chơi cần có:

Google API Java Client version 1.6.0-beta

Xem thêm tại: http://code.google.com/p/google-api-java-client/

Đăng ký API key tai: https://code.google.com/apis/console

Read More

Source: hungvo

    • #programing
    • #android
    • #tutorial
    • #sourcecode
    • #eclipse
    • #api
    • #google
  • 1 year ago
  • Permalink
Share

Short URL

TwitterFacebookPinterestGoogle+

[Android] Cài đặt maven plug-in cho Eclipse

1. Giới thiệu về Maven

Maven là công cụ quản lý và thiết lập tự động 1 dự án phần mềm dựa trên các khái niệm của POM (Project Object Model) để mô tả việc build, đóng gói, báo cáo và tạo tài liệu cho dự án. Maven thường được dùng cho cá dự án Java, tuy nhiên nó còn có thể dùng quản lý các dự án C#, Ruby.

Read More

    • #android
    • #application
    • #eclipse
    • #maven
    • #plug-in
    • #programing
    • #tut
    • #tutorial
    • #java
  • 1 year ago
  • 12
  • Permalink
Share

Short URL

TwitterFacebookPinterestGoogle+

[Giới thiệu] Google Place API - Phần 1

1. Giới thiệu về Google Place API

Google Place API là một phần của Google Map API Web Service bào gồm:

  • Direction API
  • Distance Matrix API
  • Elevation API
  • Geocoding API
  • Place API

Chúng là một tập hợp các HTTP interface cung cấp các dữ liệu địa lý cho ứng dụng bản đồ.

Place API có 4 loại request cơ bản:

  • Place Searches: Trả về danh sách vị trí các địa điểm dựa trên vị trí người dùng
  • Place Details requests: Trả về chi tiết của một địa điểm cụ thể.
  • Place Check-ins: Cho phép bạn thông báo người dùng đã checkin 1 địa điểm. Nó được dùng đo mức độ phổ biến của địa điểm.
  • Place Reports: cho phép bạn thêm địa điểm mới và xóa địa điểm mà ứng dụng của bạn đã thêm.

Read More

    • #gioithieu
    • #google
    • #api
    • #android
  • 1 year ago
  • 6
  • Permalink
Share

Short URL

TwitterFacebookPinterestGoogle+

[Android] 9-patch

1. Giới thiệu

9-patch nói nôm na là một dạng hình ảnh có thể co giãn được. Android sẽ tự động điều chỉnh kích cỡ nó phù hợp với View. Ví dụ khi nó được đặt là background của 1 button với các kích cỡ khác nhau. 9-patch là 1 file png chuẩn thêm vào 1pixel phụ ngoài viền, lưu với phần mở rộng là .9.png và đặt ở res/drawable/

Công cụ vẽ: WYSIWYG

Read More

    • #android
    • #application
    • #programing
    • #tip
  • 1 year ago
  • 18
  • Permalink
Share

Short URL

TwitterFacebookPinterestGoogle+

[Android] Access Resource

Các “dữ liệu” như: Hình ảnh, chuỗi ký tự nên được tách biệt khỏi code để có thể dễ dàng xử lý độc lập.

Tất cả “dữ liệu” nên được để trong thư mục: res/

Ví dụ:

res/

—-layout/

——-main.xml

—-drawable/

——-icon.png

—-values/

——-string.xml

Read More

    • #android
    • #programing
    • #java
  • 1 year ago
  • 3
  • Permalink
Share

Short URL

TwitterFacebookPinterestGoogle+
Page 1 of 2
← Newer • Older →

Logo

Portrait/Logo

About

In the end, it's not going to matter how many breaths you took, but how many moments took your breath away

- shing xiong

free counters

Twitter

loading tweets…

  • RSS
  • Random
  • Archive
  • Ask me anything
  • Mobile
Effector Theme by Pixel Union