일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 선형탐색
- 소켓통신
- 바이트버퍼
- 유튜브 백그라운드
- 미디어스캐닝
- 마진
- 삽입정렬
- 자바 C 패킷
- 자바
- 상태체크
- getExtra
- 나인패치
- Intent
- 유튜브 반복재생
- 유튜브 멀티태스킹
- 유튜브 백그라운드 재생
- putExtra
- 크롬캐스트
- 백그라운드
- 안드로이드
- 유
- 알고리즘
- 커스텀뷰
- 안드로이드 C 소켓통신
- ByteBuffer
- 유튜브 구간 반복
- Android
- 자바 C 소켓통신
- Insert Sort
- 버블정렬
- Today
- Total
목록안드로이드 20
Blessing Venus
RecyclerView 스크롤 끝 감지하기 RecyclerView의 스크롤 끝을 감지하여 이벤트를 처리하시는 경우 아래와 같이 구현하시면 가능합니다.ScrollListener 이벤트를 등록한 후 lastVisibleItemPosition과 ItemTotalCount를 이용하시면 가능합니다.귀찮으신 분은 아래의 코드 긁어서 쓰시면 됩니다.mRecyclerView = (RecyclerView) findViewById(R.id.search_recyclerview); mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override public void onScrolled(RecyclerView recyclerView, int dx..
java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter positionViewHolde 리사이클러뷰를 사용하시면 간혹 위와 같은 예외상황을 만날 수 있습니다. public class WrapContentLinearLayoutManager extends LinearLayoutManager { //... constructor @Override public void onLayoutChildren(RecyclerView.Recycler recycler, RecyclerView.State state) { try { super.onLayoutChildren(recycler, state); } catch (Inde..
안드로이드 기술 면접 질문 리스트 금일 회사에서 안드로이드 개발자 채용이 있어 기본적인 부분들에 대해 기술면접을진행할 면접 질문 리스트를 만들어달라는 요청이 있었습니다.리스트를 만들고 면접을 진행하였습니다.해당 면접 질문 리스트를 공유합니다.면접 보시는 신입, 경력 분들께 도움 되시기 바랍니다. 안드로이드 질문 1. Activity의 생명 주기에 대해서 설명해주세요. 2. 만약 앱을 사용하는 도중에 카카오톡 메시지가 온다면 사용하던 앱의 TopActivity의 생명주기는 어떤 상태가 되나요?- onPause 상태가 됩니다. 3. onRestart는 언제 호출이 되나요?- Activity가 중지 상태에서 다시 화면에 표시되기 직전에 호출됩니다. onRestart->onStart->onResume-> Act..
부모뷰(shape 테두리 적용) 자식뷰... ...많음 위와 같은 구조일때 부모뷰의 하위 자식뷰가 너무 많아 디바이스의 피지컬범위를 벗어나는 경우 XML의 shape를 통해서적용한 border가 초기화 되는 문제가 발생한다.주된 원인은 테두리의 corners를 주는 속성에서 발생한다.위의 주석처리한 부분으로 코너를 줄 경우 부모의 자식뷰가 많아서 자식뷰의 범위가 화면의 피지컬범위를 벗어날 경우XML shape가 무효화 되는 버그가 발생하는데 이를 해결하기 위해서는 위와 같이 주석처리한 코너 속성을 사용하지 말고 속성을 사용함으로써 해결 할 수 있다.
CastCompanionLibrary-android(CCL) CastCompanionLibrary-android는 개발자가 응용 프로그램에 Cast 기능을 더 빠르고 쉽게 통합 할 수있게 해주는 라이브러리 프로젝트입니다.Roe's Lab에서 크롬캐스트 개발하기 강좌도 CCL 라이브러리로 진행을 하였습니다.크롬캐스트를 매우 편하게 개발 가능하게 해주는 라이브러리입니다. https://github.com/googlecast/CastCompanionLibrary-android
안녕하세요. 크롬캐스트 앱을 개발하자! 다섯번째 시간입니다. 이번 시간에는 지난 시간에 이어서 스마트폰과 Cast를 커넥션하고 실제로 테스트 영상을 전송하여 TV에 보여지도록 해보겠습니다. 이번 단계까지 하면 가장 기본적인 크롬캐스트의 기능은 모두 구현이 되므로 이번 시간을 마지막으로 크롬캐스트 앱 개발하기를 마치겠습니다. 우리가 이번에 할 것은 영상에 대한 Meta정보를 만들겠습니다.그 이후에는 CCL 에서 제공하는 위와 같은 VideoControllerActivity를 호출 할 것입니다. 먼저 Meta 정보가 세팅된 MediaInfo 객체를 만들어야 합니다. MediaInfo 객체에 세팅 가능한 값은 CCL 가이드 문서를 참조해주세요. 우리는 기존에 만들어져 있는 CCL 샘플프로젝트의 VideoPro..
안녕하세요. 네번째 시간입니다. 이번 시간부터 본격적인 크롬캐스트(ChromeCast) 개발을 진행하겠습니다. CastCompanionLibrary(CCL) 1. Initializing VideoCastManager 가장 먼저 해야 할 일은 VideoCastManager의 인스턴스를 초기화 하는 것입니다. CCL의 여러 기능을 클라이언트의 필요에 맞게 사용 가능하게 하거나 구성 할 수 있습니다. 이러한 구성 매개 변수는 CastConfiguration 클래스로 설정할 수 있습니다. 이 클래스를 빌드하려면 Builder 패턴을 사용하고 필요한 모든 구성 매개 변수를 설정하면 됩니다. 다음은 샘플코드입니다. /** * CCL의 여러기능을 클라이언트의 필요에 맞게 사용 가능하게 하거나 구성 할 수 있으며 * ..
미디어스캐닝(MediaScanning)우리는 스마트폰에 파일을 복사하거나, 만들거나 했을때 미디어스캐닝중이라는 메시지를 본 적이 있습니다.미디어스캐닝이란 스마트폰에 어떤 파일이 생성되었을때OS가 파일의 존재를 인식하기 위한 스캐닝이라고 보시면 됩니다.아래에서 미디어스캐닝 코드를 살펴보겠습니다.String imagePath = "파일 경로"; Intent mediaScanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); File file = new File( imagePath ); Uri contentUri = Uri.fromFile(file); mediaScanIntent.setData(contentUri); this.sendBroadcast(me..
Intent를 사용하여 데이터를 실어 다음 Activity로 넘기는 방법을 알아볼까요.우리는 현재 Activity에서 다음 Activity로 데이터를 넘겨주는 상황이 종종 발생합니다.이런 상황에서 Intent에 데이터를 실어서 전달해주면 매우 간편하고 유용합니다. MainActivity.classIntent intent = new Intent(this, SndActivity.class); intent.putExtra("name", "Roe"); startActivity(intent);Intnet에 putExtra를 사용하여 KEY와 VALUE를 저장시킵니다.안드로이드 프레임워크에서 putExtra가 오버로딩으로 구현되어 있기 때문에 여러가지 자료형을전달할 수 있습니다.저는 KEY를 name으로 값을 Ro..