まずはAndroidManifest.xmlというファイルに
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
という一行を追加してください
ソースコードは下の書いた通りです
package com.example.getipaddress import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.net.wifi.WifiManager import kotlinx.android.synthetic.main.activity_main.* class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val manager:WifiManager = this.applicationContext.getSystemService(WIFI_SERVICE) as WifiManager val ipAddress = manager.connectionInfo.ipAddress text.text=ipToString(ipAddress) } fun ipToString(ipAddress:Int):String{ return (ipAddress and 0xFF).toString()+"."+(ipAddress shr 8 and 0xFF)+"."+(ipAddress shr 16 and 0xFF)+"."+(ipAddress shr 24 and 0xFF) } }
WifiManagerのconnectionInfo.ipAddressを通して、IPアドレスを取得し、それを文字列に変換して、我々の読めるIPアドレスにします