본문 바로가기

반응형

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

(42)
2021-03-29안드로이드 스튜디오(키보드 제어 , 다이얼로그 ) 키보드 제어 에디트텍스트에 포커싱 하게 되면 아래에서 키보드가 올라온다 . 그랫을때 그 키보드를 제어하는 방법이 있다. 코드로 제어 하는 방법이 있고 , 매니패스트로 제어를 하는 방법이 있는데 , 코드로 작성하는 법 보다 매니패스트 설정이 더 간단하고 솔직히 키보드를 제어할 일이 많이 없을거 같아 코드만 넣어 놓고 설명은 생략 하겠다 public class MainActivity extends AppCompatActivity { EditText editText; InputMethodManager manager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContent..
2021-03-26안드로이드 스튜디오(알림설정[Notification]) 어제에 이어 위엄권한과 브로드캐스트 공부이다. 색별로 셋팅을 따로 해줄수 있다 . *프로젝트이름은 매니패스트에서 라벨변경해주면 변경가능하다 실제 핸드폰화면인데 이렇게 보는 것이 알림이다 . ( 카카오톡 생각하면 된다 ) 이런것들을 설정할 수 있는게 알림이다. (내가 만들고 싶은 앱 보탐봇에 필수적인 요소 ) 코드보자 메인 액티비티 public class MainActivity extends AppCompatActivity implements View.OnClickListener { // 알림을 시스템에 발생시키는 SystemService NotificationManager manager; // 알림을 다양한 정보로 생성 NotificationCompat.Builder builder; Button basi..
2021-03-25안드로이드 스튜디오(브로드캐스트3 , 위험 권한) 위험 권한은 앱이 실행되는 시점에 수락을 해야 동작을 한다 라고 알고 있자 ! 어제 배운 내용들을 사용하여 오늘 위험권한에 대해서 살펴 볼것이다. 어제 작성한 코드를 보면 sms를 받으면 그 정보들을 받아와 브로드캐스트에서 받아서 나의 앱에 던저주는 것까지 했다 그런데 sms와 같이 아에 외부에서 들어오는 글로벌 이벤트 말고도 핸드폰에서 보내는 시스템 브로드캐스트라는 것도 있다. 전화로 예를 들면 전화가 왔을때 , 전화를 걸었을때, 배터리가 없을때 , 배터리를 충전할때 등과 같이 시스템에서 보내는 정보들도 브로드캐스트로 받아줄 수 있다. 하지만 나의 앱에서 이러한 정보들을 사용할려면 먼저 사용자에게 동의를 얻어야 사용할 수 있다. 그게 위험권한인것이다. 말로 설명하는 것보다 코드를 보면서 이해를 하도록 ..
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..

반응형