0
fun ExifInterface.getTags(): HashMap<String, String> {
        val mAttributes = mAttributes()

        var map = HashMap<String, String>()
        if (mAttributes is Array<*>) {
            val arrayOfMapAux = mAttributes as Array<HashMap<String, *>>
            arrayOfMapAux.indices
                .flatMap { mAttributes[it].entries }
                .forEach { map[it.key] = this.getAttribute(it.key)!! }
        } else if (mAttributes is HashMap<*, *>) {
            map = mAttributes as HashMap<String, String>
        }

        val latLonArray = FloatArray(2)
        if (this.getLatLong(latLonArray)) {
            val lat = latLonArray[0].toString()
            val lng = latLonArray[1].toString()
            Log.d("imgGpsTracker", "lat = $lat & lng = $lng")
        }
        Log.d("imgGpsTracker", "lat = ${latLonArray[0].toString()} & lng = ${latLonArray[1].toString()}")
        return map
    }

我试图获取图像的 gps 位置,但我得到的只是 0/1 0/1 0/1。没有 gps 位置的图像返回空值。 从这里结帐 logcat 行

从以下获得用户权限

<uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.CAMERA"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_MEDIA_LOCATION" />
    <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
4

0 回答 0