갤럭시기준으로 상단바를 하위로 내렸을 때 "화면 녹화" 기능이 있으면 오디오까지 같이 녹화 가능

* 이 기능은 갤럭시노트9의 안드로이드 버전 10부터 지원

* 갤럭시노트8까지는 상단바에서 "화면 녹화"기능을 지원하지 않음

 

갤럭시노트8에서 화면녹화 할려면 adb shell에서 screenrecord를 이용하면 가능함.

* 하지만 기기에서 audio 녹음까지 동시 지원하지 않아서 화면만 녹화가능함.

* 디바이스에서의 지원문제(?)로 scrcpy와 같은 응용프로그램으로도 안되는 듯

 

scrcpy에서의 화면녹화 시 audio 지원은 Android 11이상부터 지원한다고 소개되어 있음.

- https://github.com/Genymobile/scrcpy

 

소리관련

* 구글에서 Android 9 이하의 시스템은 내부사운드(시스템오디오)를 녹음하는 API를 제공하지 않음.

* Android 10 이상으로 업데이트해야 내부사운드를 녹음할 수 있음.

 

'IT 일반 > 안드로이드' 카테고리의 다른 글

[ADB] am start -an 실행 시 Error 문제  (0) 2023.08.21

 

1) 액티비티 확인

앱에 특정 액티비티가 존재하는지를 명확히 확인하기 위해 dumpsys로 정보를 출력한다.

LAUNCHER 액티비티를 찾는다.

$ dumpsys package com.skmc.okcashbag.home_google
...(생략)...
9e46495 com.skmc.okcashbag.home_google/.activities.Entrypoint filter d2269aa
          Action: "android.intent.action.MAIN"
          Category: "android.intent.category.LAUNCHER"
          Category: "android.intent.category.DEFAULT"
...(생략)...

 

2) 오류확인

am start -an 명령어로 액티비티를 실행한다.

액티비티가 있는것을 확인하고 실행하였으나 존재하지 않는다고 오류 메시지를 출력한다

$ am start -an com.skmc.okcashbag.home_google
Starting: Intent { act=n pkg=com.skmc.okcashbag.home_google }
Error: Activity not started, unable to resolve Intent { act=n flg=0x10000000 pkg=com.skmc.okcashbag.home_google }

 

3) 해결방법

이럴 경우  am start-activity 를 이용하여 앱을 시작할 수 있다.

$ am start-activity com.skmc.okcashbag.home_google/.activities.Entrypoint
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.skmc.okcashbag.home_google/.activities.Entrypoint }

 

4) 왜 발생할까?

우선 확인된 내용은 앱의 targetSdk 버전이 33일 경우 am start -an 으로 실행되지 않는다는 점이다.

앱의 targetSdk 버전이 32 이하의 패키지는 모두 am start -an 으로 실행가능했다.

com.tmon
    versionCode=23005941 minSdk=23 targetSdk=33

$ am start -an com.tmon/.splash.SplashActivity
Starting: Intent { act=n cmp=com.tmon/.splash.SplashActivity }
Error type 3
Error: Activity class {com.tmon/com.tmon.splash.SplashActivity} does not exist.
com.hnsmall
    versionCode=531 minSdk=21 targetSdk=32

$ am start -an com.hnsmall/.presentation.MainActivity
Starting: Intent { act=n cmp=com.hnsmall/.presentation.MainActivity }

 

targetSdk 33은 Android 13에 해당하는 버전이다.

위 정보로 짐작컨데 Android 13 앱에 대한 권한 변경으로 발생한 문제로 보인다.

'IT 일반 > 안드로이드' 카테고리의 다른 글

[기록] Android에서 화면녹화  (0) 2023.09.15

bash or sh 여부에 따라 다르게 동작할 수 있음.

동일한 bash 더라도 버전에 따라 다르게 동작할 수 있음.

 

단일 조건일 때는 둘다 무관하지만 여러조건을 한 줄에 표현할 때 차이가 있음.

if [ 조건문 ] && [ 조건문 ] ; then
fi
if [[ 조건문 && 조건문 ]] ; then
fi

 

'프로그래밍 > ShellScript' 카테고리의 다른 글

[shell script] if  (0) 2019.04.20
디렉터리 존재여부 확인  (0) 2019.04.17

+ Recent posts