본문 바로가기

반응형

아옳옳의 코딩공부

(96)
2021-03-24안드로이드 스튜디오(브로드캐스트2, 위험권한) 어제에 이어 오늘도 브로드캐스트에 대해서 한번 더 짚고 넘어가자 어제는 문자가 왔을때 브로드캐스트에서 정보를 받아오는 것과 위험 권한을 주는것에대해서 살짝 했었다 오늘은 실제로 넘어온 정보를 뜯어서 나의 어플리케이션에 직접 사용해 보자~! 코드 살펴 보자~ public class SMSReceiver extends BroadcastReceiver { //날짜를 받을때 이렇게 포멧하겠다 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-mm-dd-HH:mm:ss"); @Override // 메시지가 오면 이메소드가 자동호출됨 public void onReceive(Context context, Intent intent) { Bundle bundle = i..
2021-03-23안드로이드 스튜디오(브로드캐스트) 브로드캐스트 .... 넘나 어렵게만 느껴 지는데 .. 글로만 봤을땐 외부에서 들어오는 신호를 수신하는것! 혹은 송신하는것 카톡에서 여러 사람들에게 메시지를 전달할 때 그룹 채팅으로 메시지 보내는것 안드로이드도 여러 앱 구성요소에 메시지를 전달할 때 브로드캐스팅을 사용함 브로드캐스트 수신자는 onReceive()메소드를 정의해야된다 왜냐 이 메소드는 원하는 브로드캐스트 메시지가 도착하면 자동으로 호출 된다. 그런데 시스템의 모든 메시지를 받을수 없기에 인텐트 필터를 사용해 걸러줘야한다 ( 모든 메시지는 인텐트안에 전달 되기 때문) 일단 브로드캐스트리시버를 만들고나면 다음 코드처럼 태그가 추가 되는데 그 추가에 액션값을 넣어준다 name속성에 수신자 이름 지정하고 intent-filter에 액션정보 넣어준다..
2021-03-22안드로이드 스튜디오(서비스 ) 서비스란 백그라운드에서 실행되는 어플리케이션의 구성요소 이다 쉽게 내 메인이 실행하는동안에 뒤에서 작업하는 공간이라고 생각하면 된다 (유튜브 프리미엄 생각하자 ) 서비스에도 따로 자기만의 생명주기가 있다. 사용하는 방법은 2가지 방법이 있다(서비스 , 바인드 서비스 ) (같은색끼리 묶음) 스타트와 스탑으로 실행과 종료한다 매니패스트 자동으로 추가됨 일단 Context.startSrevice부터 살펴 보도록하자 메인액티비티 public class MainActivity extends AppCompatActivity { EditText editText; Intent intent; //(태스크 때 배운것 정보불러오기) 서비스에서 작업하고 넘겨준 값을 받아옴 @Override protected void onNe..
2021-03-19 안드로이드 스튜디오(레이아웃 인플레이션 , 어플리케이션 구성하기) 레이아웃 인플레이션 메모리에 올라가서 객체가 되는 과정이다 그렇게 인플레이션 된 레이아웃을 setContentView 메소드로 레이아웃 파일과 매칭 시키는 것이다. (보통 메인클래스에 setContentView(R.id.activity_main) 이렇게 되어있다 ) 하지만 보여지는 화면에 하나의 레이아웃 파일만 있으라는 법은 없다 그래서 한개의 화면에 다른 레이아웃화면을 띄울 때 나머지 레이아웃도 인플레이션 해주어야 하는데 그것을 아래의 코드로 할 수 있다. getSystemService(Context.LAYOUT_INFLATER_SERVICE) 를 사용하여 해줄수 있다. (다른 레이아웃.xml 파일을 인플레이션 해주는 기능) package com.example.chap11; import androidx..
2021-03-18 안드로이드 스튜디오( 사용자 이벤트 처리와 리소스2 ,애니메이션) key 입력 이벤트 처리하기 일반적인 키코드값은 정수로 받아들여진다 위 사진에 보이는것처럼 각종 키버튼에 대한 이벤트 처리를 할 수 있지만 키 고유의 기능때문에 잘 사용하진않지만 그 중에 가장 많이 사용되는 BACK버튼으로 실습을 진행해 보았다 BACK버튼을 잘못눌럿을때 어플이 종료되는것을 막기위해서 일정 시간안에 한번더 눌러야 종료가 된다 던지 BACK버튼 을 눌럿을때 팝업창을 하나 띄워 한번더 물어보게 한다던지 등으로 사용 할 수 있는데 이번 실습은 일정 시간안에 한번더 눌러줘야 종료되는것으로 해볼것이다 메소드 오버라이드를 하여 사용하는 2가지 방법이 있다 제너레이트 > 오버라이드 메소드 하고 아래의 두가지 코드둘다 사용가능하다 @Override 빽버튼 키코드로 다른것들도 사용 가능 public bo..
2021-03-17 안드로이드 스튜디오( 태스크3 , 사용자 이벤트 처리와 리소스 활용 ) FLAG_ACTIVITY_RESET_TASK_NEEDED 같은거 같지만 의미가 다르다 최신실행앱으로 재실행 하게 되면 탑 액티비티로 복귀 한다 그런데 다른점은 매니패스트에 clearTaskOnLaunch 를 적어주게 되면 상위 액티비티를 정리해준다 앱을 다시 실행한듯한 느낌을 줄때 사용을 한다 finishOnTaskLaunch (NoHistory 랑 비슷 ) 이것은 앱을 다시 실행 했을때 그 액티비티만 제거됨 clearTaskOnLaunch는 루트부터 실행 하지만 이건 설정된 액티비티부터 탑까지 제거 사용자 이벤트 처리와 리소스 활용 지금 까지 많이 사용해본것이 터치 리스너 이다 하지만 터치 리스너 말고도 많은 것들이 있는데 한번 살펴 보자 대표적인 이벤트로는 아래의 것들이 있다 터치 이벤트 -화면을 손..
2021-03-16 안드로이드 스튜디오( 태스크2) 어제는 태스크가 어떤 것인지 , 어떻게 사용하는지 등에 대해서 알아보았다 오늘은 어제의 심화라고 보면 될 거 같다 액티비티의 싱행모드
2021-03-15 안드로이드 스튜디오( 태스크) 태스크 : 안드로이드는 앱의 경계가 없다 . 이것만 이해하면 태스크를 이해 했다고 볼수 있다는데 말보다 그림을 보는것이 이해가 쉽다 #1번 오타 개발자 입장에서 하나의 앱 위 그림에서 보이듯 우리는 패키지 하나로 하나의 앱을 만들지만 사용자의 입장에서는 개발자와다르게 여러어플간 이동이 있어도 하나의 앱으로 인식을 하게 된다 그럼 태스크의 생성과 소멸을 어떻게 이루어 질가? 아래의 그름처럼 먼저 들어간 것들이 루트 액티비티라 불리며 아래의 그림 순서대로 생성과 소멸이 이루어 진다 이해를 돕기위해 우리가 사용하는 핸드폰 화면이다 아래의 화면을 보면 홈버튼? 메뉴버튼? 어쨋든 눌럿을 떄 나오는 화면이다 지금 보면 각각의 앱들이 실행된 순서에 따라 나열 된것을 볼수 있는데 이것들도 태스크라 볼수 있다. 자 그럼..

반응형