public_ip_address 1.2.0 public_ip_address: ^1.2.0 copied to clipboard
This package allows you to get your public IP Address and many others info about it.
Public IP Address #
This package allows you to obtain your public IP address and many other information about it
Features #
You can get the public IP address of the user or many other information about a specific IP address, such as :
- Name of the country
- Time Zone
- Latitude
- Longitude
- Name of the City
- Name of the Region
- Region Code
- Postal Code
- The organization or Internet service provider
- Continent Code
- Two-letter ISO 3166-1 alpha-2 country code
- Three-letter ISO 3166-1 alpha-3 country code
- The UTC time offset
- The Asn
Getting started #
Add this to your dependencies :
dependencies:
public_ip_address: ^1.2.0
And import :
import 'package:public_ip_address/public_ip_address.dart';
Usage #
To get your ip address, just use IpAddress().getIp()
:
import 'package:public_ip_address/public_ip_address.dart';
void main() async {
IpAddress _ipAddress = IpAddress();
var ip = await _ipAddress.getIp();
print(ip);
// Sample Output : 208.67.222.222
}
Don't forget to await
it because it's a Future function.
Others functionalities #
- To get all data about the user's IP address , use
getAllData()
:
Map allData = await IpAddress().getAllData();
For a specific ip , use getAllDataFor('specific_ip')
method instead .
- To get only the user's IP address, use :
IpAddress().getIp()
:
String ip = await IpAddress().getIp();
// Sample Output : "208.67.222.222"
- To get the
Ipv4
(Ip version 4) address value of the user's IP , use :IpAddress().getIpv4()
:
String ipv4 = await IpAddress().getIpv4();
// Sample Output : "208.67.222.222"
- To get the
Ipv6
(Ip version 6) address value of the user's IP , use :IpAddress().getIpv6()
:
String ipv6 = await IpAddress().getIpv6();
// Sample Output : "2a05:dfc7:5::53"
- To get the Continent Code of the user's IP , use :
IpAddress().getContinentCode()
:
String continentCode = await IpAddress().getContinentCode();
// Sample Output : "NA"
For a specific ip , use getContinentCodeFor('specific_ip')
method instead .
- To get the Country of the user's IP , use :
IpAddress().getCountry()
:
String country = await IpAddress().getCountry();
// Sample Output : "United States"
For a specific ip , use getCountryFor('specific_ip')
method instead .
- To get the Two-letter ISO 3166-1 alpha-2 country code of the user's IP , use :
IpAddress().getCountryCode()
:
String countryCode = await IpAddress().getCountryCode();
// Sample Output : "US"
For a specific ip , use getCountryCodeFor('specific_ip')
method instead .
- To get the Three-letter ISO 3166-1 alpha-3 country code of the user's IP , use :
IpAddress().getCountryCode3()
:
String countryCode3 = await IpAddress().getCountryCode3();
// Sample Output : "USA"
For a specific ip , use getCountryCode3For('specific_ip')
method instead .
- To get the Latitude of the user's IP , use :
IpAddress().getLatitude()
:
double latitude = await IpAddress().getLatitude();
// Sample Output : 37.7697
For a specific ip , use getLatitudeFor('specific_ip')
method instead .
- To get the Longitude of the user's IP , use :
IpAddress.getLongitude()
:
double longitude = await IpAddress().getLongitude();
// Sample Output : -122.3933
For a specific ip , use getLongitudeFor('specific_ip')
method instead .
- To get the TimeZone of the user's IP , use :
IpAddress().getTimeZone()
:
String timeZone = await IpAddress().getTimeZone();
// Sample Output : "America\/Los_Angeles"
For a specific ip , use getTimeZoneFor('specific_ip')
method instead .
- To get the UTC time offset of the user's IP , use :
IpAddress().getOffset()
:
int offset = await IpAddress().getOffset();
// Sample Output : -7
For a specific ip , use getOffsetFor('specific_ip')
method instead .
- To get the organization or Internet service provider (ASN + ISP name) of the user's IP , use :
IpAddress().getOrganization()
:
int organization = await IpAddress().getOrganization();
// Sample Output : "AS36692 OpenDNS, LLC"
For a specific ip , use getOrganizationFor('specific_ip')
method instead .
- To get the Name of the Region of the user's IP , use :
IpAddress().getRegion()
:
String region = await IpAddress().getRegion();
// Sample Output : "New York"
For a specific ip , use getRegionFor('specific_ip')
method instead .
- To get the Region Code of the user's IP , use :
IpAddress().getRegionCode()
:
String regionCode = await IpAddress().getRegionCode();
// Sample Output : "NY"
For a specific ip , use getRegionCodeFor('specific_ip')
method instead .
- To get the Name of the city of the user's IP , use :
IpAddress().getCity()
:
String city = await IpAddress().getcity();
// Sample Output : "Brooklyn"
For a specific ip , use getCityFor('specific_ip')
method instead .
- To get the Postal code/Zip code of the user's IP , use :
IpAddress().getPostalCode()
:
String postalCode = await IpAddress().getPostalCode();
// Sample Output : "11213"
For a specific ip , use getPostalCodeFor('specific_ip')
method instead .
Additional information #
Some countries do not have region and other information. For example, for some IP addresses outside the United States and Canada, information such as region
, regionCode
, city
and postalCode
may not be found.