一,先看效果
这里有几个库,加入项目即可很简单的获取电话号码归属地。先看运行结果。
二,步骤
1 集成3个库文件,资源在文章最后
把这三个库文件加入到项目的libs文件夹中,然后右键 Add As Library
2 布局代码
3 Activity 代码
package com.android.geodemo
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import com.google.i18n.phonenumbers.Phonenumber
import com.google.i18n.phonenumbers.geocoding.PhoneNumberOfflineGeocoder
import kotlinx.android.synthetic.main.activity_main.*
import java.util.*
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
supportActionBar?.hide()
initListener()
}
private fun initListener(){
button.setonClickListener {
val number = editText.text.toString()
val address = getGeo(number)
textView.text = address
}
}
//获取手机号码归属地的方法
private fun getGeo(phoneNumber:String):String{
val geoCoder = PhoneNumberOfflineGeocoder.getInstance()
val phone = phoneNumber.toLong()
val pn = Phonenumber.PhoneNumber()
pn.countryCode = 86
pn.nationalNumber = phone
return geoCoder.getDescriptionForNumber(pn, Locale.CHINESE)
}
}
这里重要的方法就是 getGeo()
在该方法中输入电话号码,即可返回对应的号码归属地
库文件下载地址:
链接:https://pan.baidu.com/s/1cP8IQ8RA9fnU16zQkiB3lg
提取码:9999



