【Android Studio】스마트폰의 센서 정보를 취득한다【Kotlin】
5194 단어 AndroidStudioKotlin
[ 만들면 알 수 있다! Android 프로그래밍 Kotlin 대응 10의 실천 샘플로 배우는 Android 앱 개발 입문 ]
【환경】
Mac OS Catalina 10.15.7
Android Studio 4.0.1
Minimum API Level 20
【한 일】
SensorManager의 getSensorList() 메서드를 사용하여 센서 이름 목록을 가져옵니다.
MainActivity.ktpackage com.example.maki.sensorget
import android.content.Context
import android.hardware.Sensor
import android.hardware.SensorManager
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import kotlinx.android.synthetic.main.activity_main.*
import java.lang.StringBuilder
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val buffer = StringBuilder() //センサーの一覧情報を入れるための変数を宣言-①
val sensorManager = getSystemService(Context.SENSOR_SERVICE) as SensorManager//getSystemService()の戻り値はObject型なので、SensorManager型にキャスト
val sList : List<Sensor> = sensorManager.getSensorList(Sensor.TYPE_ALL)//getSensorList()の引数には取得たいセンサーの種類を指定-②
for(sensor:Sensor in sList){
buffer.append("${sensor.stringType},${sensor.name},${sensor.vendor}\n")//sensor.type→定数、sensor.stringType→センサー名 - ③
}
txt01.text = buffer.toString()//activity_main.xmlの中にtxt01というTextViewを追加しています。
}
}
①String과 StringBuilder()의 차이
이전에 쓴 다음 기사에 차이를 정리하고 있습니다.
제목대로 이번에는 문자열을 추가해 나가므로 StrignBuilder를 사용하고 있습니다.
【Android Studio】 문자열을 추가하고 싶을 때는 String보다 StringBuilder가 좋다고 이야기 【Kotlin】
②센서 타입의 이름과 정수 일람
센서 타입의 이름과 상수는 아래에서 확인할 수 있습니다.
참고 : Android 개발자 - 센서 개요
③sensor.type과 sensor.stringType
sensor.type은 상수값이므로 ②의 표를 사용하여 수치와 종류의 대응을 확인할 필요가 있습니다.
그러나 API20부터는 stringType으로 센서의 종류를 문자열로 얻을 수 있게 되어 있으므로, 그쪽이 편리합니다.
어디까지의 API의 버젼을 서포트할까는 Gradle Scripts/build.gradle(Module:app)의 minSdkVersion 의 값으로 설정할 수 있습니다.
값을 변경한 후 화면 오른쪽 상단의 Sync now를 눌러 변경 사항을 반영합니다.
【결과】
Pixel4(실기)의 센서 일람을 취득할 수 있었습니다!
Reference
이 문제에 관하여(【Android Studio】스마트폰의 센서 정보를 취득한다【Kotlin】), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/maqiita/items/421542c74ed8b12a9edb
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
SensorManager의 getSensorList() 메서드를 사용하여 센서 이름 목록을 가져옵니다.
MainActivity.kt
package com.example.maki.sensorget
import android.content.Context
import android.hardware.Sensor
import android.hardware.SensorManager
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import kotlinx.android.synthetic.main.activity_main.*
import java.lang.StringBuilder
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val buffer = StringBuilder() //センサーの一覧情報を入れるための変数を宣言-①
val sensorManager = getSystemService(Context.SENSOR_SERVICE) as SensorManager//getSystemService()の戻り値はObject型なので、SensorManager型にキャスト
val sList : List<Sensor> = sensorManager.getSensorList(Sensor.TYPE_ALL)//getSensorList()の引数には取得たいセンサーの種類を指定-②
for(sensor:Sensor in sList){
buffer.append("${sensor.stringType},${sensor.name},${sensor.vendor}\n")//sensor.type→定数、sensor.stringType→センサー名 - ③
}
txt01.text = buffer.toString()//activity_main.xmlの中にtxt01というTextViewを追加しています。
}
}
①String과 StringBuilder()의 차이
이전에 쓴 다음 기사에 차이를 정리하고 있습니다.
제목대로 이번에는 문자열을 추가해 나가므로 StrignBuilder를 사용하고 있습니다.
【Android Studio】 문자열을 추가하고 싶을 때는 String보다 StringBuilder가 좋다고 이야기 【Kotlin】
②센서 타입의 이름과 정수 일람
센서 타입의 이름과 상수는 아래에서 확인할 수 있습니다.
참고 : Android 개발자 - 센서 개요
③sensor.type과 sensor.stringType
sensor.type은 상수값이므로 ②의 표를 사용하여 수치와 종류의 대응을 확인할 필요가 있습니다.
그러나 API20부터는 stringType으로 센서의 종류를 문자열로 얻을 수 있게 되어 있으므로, 그쪽이 편리합니다.
어디까지의 API의 버젼을 서포트할까는 Gradle Scripts/build.gradle(Module:app)의 minSdkVersion 의 값으로 설정할 수 있습니다.
값을 변경한 후 화면 오른쪽 상단의 Sync now를 눌러 변경 사항을 반영합니다.
【결과】
Pixel4(실기)의 센서 일람을 취득할 수 있었습니다!
Reference
이 문제에 관하여(【Android Studio】스마트폰의 센서 정보를 취득한다【Kotlin】), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/maqiita/items/421542c74ed8b12a9edb
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(【Android Studio】스마트폰의 센서 정보를 취득한다【Kotlin】), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/maqiita/items/421542c74ed8b12a9edb텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)