본문 바로가기

반응형

아옳옳의 코딩공부/아옳옳의 안드로이드스튜디오

(42)
2021-03-17 안드로이드 스튜디오( 태스크3 , 사용자 이벤트 처리와 리소스 활용 ) FLAG_ACTIVITY_RESET_TASK_NEEDED 같은거 같지만 의미가 다르다 최신실행앱으로 재실행 하게 되면 탑 액티비티로 복귀 한다 그런데 다른점은 매니패스트에 clearTaskOnLaunch 를 적어주게 되면 상위 액티비티를 정리해준다 앱을 다시 실행한듯한 느낌을 줄때 사용을 한다 finishOnTaskLaunch (NoHistory 랑 비슷 ) 이것은 앱을 다시 실행 했을때 그 액티비티만 제거됨 clearTaskOnLaunch는 루트부터 실행 하지만 이건 설정된 액티비티부터 탑까지 제거 사용자 이벤트 처리와 리소스 활용 지금 까지 많이 사용해본것이 터치 리스너 이다 하지만 터치 리스너 말고도 많은 것들이 있는데 한번 살펴 보자 대표적인 이벤트로는 아래의 것들이 있다 터치 이벤트 -화면을 손..
2021-03-16 안드로이드 스튜디오( 태스크2) 어제는 태스크가 어떤 것인지 , 어떻게 사용하는지 등에 대해서 알아보았다 오늘은 어제의 심화라고 보면 될 거 같다 액티비티의 싱행모드
2021-03-15 안드로이드 스튜디오( 태스크) 태스크 : 안드로이드는 앱의 경계가 없다 . 이것만 이해하면 태스크를 이해 했다고 볼수 있다는데 말보다 그림을 보는것이 이해가 쉽다 #1번 오타 개발자 입장에서 하나의 앱 위 그림에서 보이듯 우리는 패키지 하나로 하나의 앱을 만들지만 사용자의 입장에서는 개발자와다르게 여러어플간 이동이 있어도 하나의 앱으로 인식을 하게 된다 그럼 태스크의 생성과 소멸을 어떻게 이루어 질가? 아래의 그름처럼 먼저 들어간 것들이 루트 액티비티라 불리며 아래의 그림 순서대로 생성과 소멸이 이루어 진다 이해를 돕기위해 우리가 사용하는 핸드폰 화면이다 아래의 화면을 보면 홈버튼? 메뉴버튼? 어쨋든 눌럿을 떄 나오는 화면이다 지금 보면 각각의 앱들이 실행된 순서에 따라 나열 된것을 볼수 있는데 이것들도 태스크라 볼수 있다. 자 그럼..
2021-03-11 안드로이드 스튜디오(액티비티 생명주기) 어제 공부한 액티비티 생명주기에 이어서 보자~ 어제 보았던 생명주기에서 퍼지상태가 Pause 상태가 되면 잠시정지 상태가 된다고 배웠다 그때에 너무 많은 메모리를 사용할경우 지금 사용하는 액티비티가 더 중요하기 때문에 뒤로 Pause상태인 액티비티의 데이터가 손상될수 있기 때문에 그것을 방지하고자 데이터를 따로 저장 해줄수 있다 그게 바로 아래의 코드 이다 데이터 저장하는 메소드 public void saveData(){ // 데이터를 저장하는 메소드 읽기전용인지 읽고쓰고 다른곳에서도 사용할것인지 SharedPreferences sharedPreferences = getSharedPreferences("pref" , MODE_PRIVATE); // 데이터 저장하는것 SharedPreferences.Edi..
2021-03-10 안드로이드 스튜디오 (매니패스트에 대하여) 안드로이드 프로젝트를 만들 때 기본적으로 생성되는 파일 중 하나가 매니패스트 파일이다. 매니패스트는 앱이 실행되기 위한 일종의 룰, 규칙 같은 것을 설정하는 파일이라고 생각하면 된다. 매니패스트 파일에는 다음과 같은 정보를 선언해야 한다. 1. 앱의 패키지 이름 2. 앱의 구성 요소(모든 액티비티, 서비스, Broadcast Receiver, 콘텐츠 제공자 포함) 3. 앱이 시스템 또는 다른 앱의 보호된 부분에 액세스하기 위해 필요한 권한 4. 앱에 필요한 하드웨어 및 소프트웨어 기능 안드로이드 프로젝트를 처음 생성했을 때 매니패스트 파일에는 다음과 같이 선언되어있음 첫 번째 줄은 해당 파일은 xml 파일이고, 인코딩 방식은 utf-8임을 나타낸다. 다음으로 는 애플리케이션의 전반적인 정보를 포함한다. ..
2021-03-10 안드로이드 스튜디오 (액티비티 생명주기1) 안드로이드 4대 컨포넌트 Activity Activity는 사용자와 어플리케이션간의 상호작용을 하는 화면을 의미하며 모든 어플리케이션은 하나 이상의 Activity가 존재한다. Activity는 생명주기 관련 메서드들을 재정의 하여 원하는 기능을 넣어서 사용자와 상호작용 할수 있다. ​ Service Service는 사용자와 직접적으로 상호작용 하지는 않으며 대체적으로 개발자가 백그라운드에서 필요한 작업을 처리하기 위해 Service를 사용한다. 서비스는 메인스레드에서 동작하기 때문에 Service내부에서 별도의 스레드를 생성하여 작업을 처리해 주어야 한다. ​ BroadcastReceiver BroadcastReceiver는 안드로이드 시스템으로 부터 발생하는 이벤트와 정보들을 받아 처리해 준다. 예를..
2021-03-09 안드로이드 스튜디오 (암시적인텐트 사용하기) 오늘은 진도 보다 암시적인텐트를 사용하여 여러가지 기능들을 사용해보았다~!! 어짜피 코드로 구성되어 있어서 코드보면서 이해하면되고 딱히 정리할게 없다 암시적 인텐트를 통한 각종 기능 구현 (카메라 , 음성인식, 전화걸기 , 맵 ,브라우저 연결 ) package com.example.myapp; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import androidx.core.content.ContextCompat; import android.Manifest; import android.content.Intent; import android.content.pm.PackageManager; impor..
2021-03-08 안드로이드 스튜디오 (명시적인텐트 , 암시적인텐트 ) 쉽게 생각해서 정보나 데이터를 보내고 받는거라고 생각하면 되는데 명시적인 인텐트는 내가 보낼곳을 딱 정해서 보내고 받는것 암시적인 인텐트는 내가 보낼곳을 명시하지 않고 보내고 받는것 명시적인텐트는 전에 정리 해놓은것들을 참조하면 될것이다 암시적 인텐트 특정 클래스를 지정하지 않고 (직접적으로 말 안함!) 찾아가게 한다 예) ~를 보여줘! 라고 하면 ~가 가능한 곳으로 찾아가서 해당하는 것들을 실행 시켜준다 내부에서 아래 그럼처럼 이동하는데 매니패스트에 작성한 것을 패키지 매니저가 알고있다 패키지 매니저가 매니패스트를 보고 찾아준뒤에 실행 하는 원리이다 다른패키지를 할때 사용하는게 조하!!!!! 사용방법 1. 명시적 인텐트와 같이 보내는곳을 먼저 정의 해주어야한다 그때 받는곳에 매니패스트를 통하여 전달을 ..

반응형