google/libaddressinput

Google’s postal address library, powering Android and Chromium

624

stars

498

commits

C++

primary language

May 15, 2026

updated

README

libaddressinput

Build Status

The libaddressinput project consists of two different libraries (one implemented in C++, one implemented in Java for Android) that use address metadata from Google's Address Data Service to assist application developers in collecting and handling postal addresses from all over the world.

These libraries can provide information about what input fields are required for a correct address input form for any country in the world and can validate an address to highlight input errors like missing required fields or invalid values.

C++

The C++ library (in very portable C++11) of libaddressinput is used in address-related projects in Chromium.

https://chromium.googlesource.com/chromium/src/+/master/third_party/libaddressinput/

Java

The Java library of libaddressinput is written for use in Android and includes an Android UI address input widget ready for use, but only the UI parts are tied to Android.

Non-UI code and tests can be run in Java SE, and the rest of the library could easily be adapted to run in any Java environment.

Mailing List

Using and developing libaddressinput is discussed on this mailing list:

https://groups.google.com/forum/#!forum/libaddressinput-discuss

License

Source code licensed under the Apache 2.0. Data licensed under the CC-BY 4.0

Contributors

roubert

135 commits

lararennie

102 commits

rsolomakhin

90 commits

dlyongemallo

29 commits

google/libaddressinput

Google’s postal address library, powering Android and Chromium

624

stars

498

commits

C++

primary language

May 15, 2026

updated

README

libaddressinput

Build Status

The libaddressinput project consists of two different libraries (one implemented in C++, one implemented in Java for Android) that use address metadata from Google's Address Data Service to assist application developers in collecting and handling postal addresses from all over the world.

These libraries can provide information about what input fields are required for a correct address input form for any country in the world and can validate an address to highlight input errors like missing required fields or invalid values.

C++

The C++ library (in very portable C++11) of libaddressinput is used in address-related projects in Chromium.

https://chromium.googlesource.com/chromium/src/+/master/third_party/libaddressinput/

Java

The Java library of libaddressinput is written for use in Android and includes an Android UI address input widget ready for use, but only the UI parts are tied to Android.

Non-UI code and tests can be run in Java SE, and the rest of the library could easily be adapted to run in any Java environment.

Mailing List

Using and developing libaddressinput is discussed on this mailing list:

https://groups.google.com/forum/#!forum/libaddressinput-discuss

License

Source code licensed under the Apache 2.0. Data licensed under the CC-BY 4.0

Contributors

roubert

135 commits

lararennie

102 commits

rsolomakhin

90 commits

dlyongemallo

29 commits

Languages

C++

51.7%

Java

47.2%

Python

1.1%