목록안드로이드 (31)
막무가내 삽질 블로그
최근에 프로젝트 참여중 한가지 이상한점을 발견했다. 액티비티가 onDestroy 되었는데 계속 살아나는 것이였다............ ????????????????????????????????? 이건 무슨 상황인가 싶었다. A 액티비티에서 서버로 데이터를 전송 후 결과를 받으면 B 액티비티로 이동하고 B 액티비티에서 웹뷰가 띄워지는 구조다. 웹뷰를 종료 시키고 해당 액티비티를 나왔을때 finish()를 시켜주고 다시 백키를 누르면 웹뷰로 들어가졌다.... 뭐지??????싶었다. 웹뷰라는 앱 외부 코드라도 해당 액티비티가 죽었는데..... 왜 살아나지...? 여기저기 찾아보다 웹뷰를 강제로 죽이는 방법, remove 하는 방법 이것저것 해봤는데 해결 하지 못했다. 그러던 도중 액티비티가 onDestroy ..
LayoutInflater XML에 정의된 Resource(자원) 들을 View의 형태로 반환해 준다. 자바 코드에서 View,ViewGrop 을 사용하거나 Adapter의 getview() 등... 배경화면이 될 Layout을 만들어 놓고 View 형태로 반환받아 Activity에서 실행하게 된다. 보통 Activity를 만들면 onCreate() 메서드에 추가되어 있는 setContentView(R.layout.activity_main) 메서드와 같은 원리다. 이 메서드 또한 activity_main.xml 파일을 View로 만들어서 Activity 위에 보여주는 방식이다
뷰(View) 뷰는 안드로이드 화면의 구성요소이다. 즉 화면에 보이는 모든 것은 View EditText -> 사용자 직접 입력할 수 있는 뷰 Button -> 사용자가 터치할 수 있는 뷰 TextView -> 사용자에게 텍스트를 출력하는 뷰 ImageView -> 사용자에게 이미지를 출력하는 뷰 뷰는 자신이 화면 어디에 배치되어야 하는지에 대한 정보가 없다. 뷰만으로 화면에 나타날 수 없다. 뷰를 화면에 배치하기 위해서는 반드시 무언가가 필요하다. 그것이 바로 뷰그룹(ViewGrop) 혹은 뷰컨테이너(Container)이다. 뷰그륩(ViewGrop) n개의 View를 담을 수 있는 컨테이너이다. ViewGrop 또한 View를 상속받아 만든 클래스. 또 다른 말로는 레이아웃이라고도 한다. 뷰그룹은 뷰만..
참:http://blog.dramancompany.com/2016/08/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C%EC%97%90-%ED%85%8C%EC%8A%A4%ED%8A%B8-%EB%8F%84%EC%9E%85%ED%95%98%EA%B8%B0/ 우선 두개의 차이점은 C -> P 로 바뀐다. MVC에서는 Model과 View가 연결되어 있지만 MVP 에서는 연결되어 있지 않다. 안드로이드에서 MVC는 액티비티나 프래그먼트에 컨트롤러와 뷰에 관한 코드를 전부 넣는다. 따라서 MVC패턴이라고 하기에 애매하고 코드가 복잡해진다.(웹에서는 MVC가 통용, 안드로이드에서는 불가능? 힘듬) MVP는 Presenter를 만들어 모델과 뷰를 분리 해주고 Presenter를 통해..
안드로이드에서 다이얼로그를 만들 후 dismiss를 시키지 않고 Activity를 종료한 후 WindowManager를 이용하여 addView를 추가 시키고자 할때 에러 메시지 E/WindowManager( 1374): Activity com.jjoe64.example.MainActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@405446f8 that was originally added here E/WindowManager( 1374): android.view.WindowLeaked: Activity com.jjoe64.example.MainActivity has leaked window com.android..
스트리밍이란? 흐르다, 흐름이란 사전적 의미를 가지고 있다 기술적인 의미는 인터넷으로 음성이나 영상 파일 등을 실시간으로 재생하는 기술 우리가 일상에서 볼 수 있는 스트리밍 서비스는 대표적으로 youtude, netflix, twitch, afreecatv 등이 있다. 스트리밍 서비스 종류에는 다음과 같은 것들이 있다. 1. Progressive Download 2. RTSP/RTMP Streaming 3. Adaptive HTTP Streaming 1. Progressive Download 서버에서 클라이언트로 정보가 올 때, 파일의 일부가 전송되더라고 도착한 파일의 일부를 재생하는 방법 (대표적으로 youtube가 사용했던 방식, 지금은 아님) 장점 : 가장 구현하기 쉬운 방식으로 웹 서버에 비디오를..
dialog 생성시 context 에 getApplicationContext() 로 사용해서 나는 오류 AlertDialog.Builder builder = new AlertDialog.Builder(액티비티이름.this); 끝