자바 어플 개발 20

Stack

스택을 관리하는 방법은 2가지가 있다. 1. Launch Mode Standard (Activity를 복수개를 생성 할 수 있다.) - 기본모드 - 다중 인스턴스 허용 특별히 설정하지 않아도 적용이된다. singleTop (Activity를 복수개를 생성 할 수 있다.) - 조건부 다중 인스턴스 허용 - 해당 액티비티가 최상위 stack에 있을 경우에는, onNewIntent() 메서드를 호출 한다. singleTask (Activity를 복수개를 생성 할 수 없다.) - 비권장 - 오직 한개만 생성 될 수 있고, 자신이 새로운 stack을 만들어 나가고, 다른 액티비티들을 위에 쌓을 수 있다. singleInstance (Activity를 복수개를 생성 할 수 없다.) - 비권장 - 오직 한개만 생성 ..

Intent에 데이터를 input하는 방법

Activity A에서 Activity B로 명시적으로 데이터를 받는 방법을 먼저 보여주겠다. package fast.campust.myapplication; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.os.Bundle; import android.util.Log; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { Log.d("LifeCycle","1 : onCreate"); super.onCreate(savedInstan..

Intent

어플리케이션 구성요소간에 작업 수행을 위한 정보 전달을 하는 역할 Intent 종류 명시적 Intent 암시적 Intent 작업을 수행 하길 원하는 컴포넌트를 정확히 지목 해당 작업을 할 수 있는 컴포넌트 전부에게 전달 Intent intent = new Intent(this, NextActivity); startActivity(intent); Intent intent = new Intent(package.name.NextActivity); startActivity(intent); 개발할때는 안정성을 추구하기 때문에 반드시 편처럼 intent를 만들어서 화면을 전환해야한다. 암시적인것은 공유버튼을 눌렀을때 특정 어플리케이션을 여는것이 아니라 공유기능을 수행할수있는 소셜 어플리케이션을 여러개가 목록처럼 올..

Activity

어플리케이션 구성요소 어플리케이션은 여러개의 Activity로 구성된다. Activity는 또 다른 Activity를 시작 할 수 있다. 새로운 Activity가 시작되면 이전 Activity는 중단 되지만, '스택'에 보존하고 있다. 오버라이드해서 설정을 할때, "Log.d()"가 있는데 이것은 무슨뜻이냐면 System.out.print와 비슷한것이다. 개발할때 중간중간에 원하는 작업이 잘 작동이 되는지 확인차에 출력할때 그때 사용이 되는 것이다. 소괄호 안에는 ""을 이용해서 처음에는 키값을 넣고 그다음에는 벨류 값을 넣는다. Activity는 앱의 한 화면이라고 생각하면 된다. 앱은 화면들의 연결로 구성되어 있고, 이러한 화면들을 액티비티라고 한다. 액티비티는 또다른 액티비티를 시작할 수 있다. 새..

실물 디바이스로 포팅하는 방법 & 프로파일러 사용 방법

실물디바이스로 포팅하는 방법은 2가지가 있다. 실물 디바이스를 연결했을때는 개발자 모드로 변환한 후에는 개발자 옵션이 생기는데 개발자 옵션에 들어가서 디버깅모드를 반드시 활성화 시켜야 한다. 만약 컴퓨터 성능이 떨어진다면 에뮬레이터로 보는것보다 실물 디바이스로 연결해서 보는 것을 더 추천한다. 또한 가끔 에뮬레이터에서는 문제없이 작동하는 것이 실제 핸드폰에 연결헀을때 문제가 될 때도 있기 때문에 이점을 유의하여야 한다. 최대한 실물디바이스를 연결해서 하는 것을 추천한다. 프로파일러는 앱이 CPU, RAM를 얼마나 차지하고 어느 통신사 사용하는지, 리소스에 관한 프로파일을 보여주게된다. 이것을 확인하려면 에뮬레이터든지 실물디바이스던지 연결을해서 작동을 해보아야한다. 그리고 에뮬레이터든 실물디바이스던 작동을..

Gradle Script란

외부에서 추가된 기능들을 라이브러리라고 하는데 이러한 라이브러리를 관리하는것이 gradle이다. 보면 첫번째 build.gradle과 두번째 build.gradle을 볼 수 있다. 첫번쨰는 project전체에 영향을 주는 파일을 설정하는 것이다. 두번째는 app에 영향을 주는 파일을 설정하는 것이다. Module:app에 build.gradle에 들어가면 이러한 모습을 볼 수 있다. apply plugin: 'com.android.application' android { compileSdkVersion 29 //기계가 알아들을 수 있는 29버전 코드로 바꾼다. buildToolsVersion "29.0.0" defaultConfig { applicationId "com.example.myapplicati..

자바 어플리케이션에 대해서 기본설명<1>

Package name은 그 어플리케이션의 고유값을 설정하는것이기 때문에 만약 다른 어플과 고유값이 충돌이 나면 playstore에 나의 어플을 올릴수가 없다. 확인방법은 package name을 변경하는데 만약 빨간줄이 있다면 이미 사용하고 있다는 뜻이된다. 안드로이드에서 AVD설정하는 화면에 만약 인터넷속도를 결정하고 싶으면 network로 간다. 그런데 그곳에는 보통 full(default 값)로 되어있는걸 추천한다. 왜냐하면 상황에따라서 가장빨리 속도를 낼 수 있는 네트워크로 연결되기 때문이다. full밑에 다른것은 임의로 특정 네트워크를 정해주는 것이다. 안드로이드탭은 앱이 최상위 폴더이다. 그리고 그곳에는 manifest를 볼 수 있는데, 그곳에 들어가면 이렇게 나온다. 또한 manifest는..

ArrayList

ArrayList생성 방법 1. ArrayList에 들어가 자료형을 명시적으로 표현 ArrayList 변수명 = new ArrayList(); 2. ArrayList에 들어가 자료형을 생략 ArrayList 변수명 = new ArrayList(); cf. 명시적으로 적는것과 명시적으로 적지않는것에는 차이가 있다. 명시적으로 적은곳에 명시된 다른값을 넣게 된다면 오류가 나게 된다. 명시되지않는 곳에는 모든형태의 자료형들이 들어 올 수 있다. ArrayList 사용방법 1. ArrayList에 값을 추가하는 방법 ArrayList testList = new ArrayList(); testList.add(값); 2. ArrayList에 값을 제거하는 방법 ArrayList에 값을 제거하는 방법 testList..