본문 바로가기

안드로이드

안드로이드 os 빌드 실습 안드로이드 OS 빌드 실습 -os 설치 사이트http://androidxref.com/ /droid_oo (안드로이드 오레오버전 os)vendor : 할 부분out : 빌드시 생성 boot.img = kernel (img) + ramdisk.img 커널 위에 system.img가 디스크에 올라간다. android os = bl(부트로드) + boot.img + ramdisk.img + system.img 빌드하기1.환경설정해주는 쉘을 돌려준다 2.런치를 해준다 -eng는 앤지니어 버전? 2-1 런치까지 해주면 $OUT , croot 스크립트(명령어) 를 쓸수있다..(새로운 코멘드창 열었으면 다시 런치해줘야 먹는다)3. make 명령어를 주면 빌드가 된다. 이떄 out 폴더 생김 4. cgrep(씨언어 소.. 더보기
[ERROR]android:singleLine is deprecated: False is the dsfault, so just remove the attribute.. API Level 3android:singleLine="true"android:singleLine is deprecated: False is the dsfault, so just remove the attribute.. 아래와 같이 변경android:scrollHorizontally="false" android:ellipsize="end" android:maxLines="1" 더보기
loading bar custom drawable_loading.xml drawble_loading_style.xml view_ani_loading.xml style.xml @null @android:color/transparent true @null @null @android:style/Animation.Dialog stateUnspecified|adjustPan false @android:color/transparent BaseFrag.java View loading_view = (View)getAct().getLayoutInflater().inflate(R.layout.view_ani_loading, null);ImageView img = (ImageView)loading_view.findViewById(R.id.loading_im.. 더보기
Glide Transformations - 이미지 변형 build.gradlecompile 'jp.wasabeef:glide-transformations:2.0.1'//round image Glide.with(getActivity()) .load(_path) .fitCenter() .transform(new Circle(getContext())) .into(mImageViewMyInfoTop); //background image Glide.with(getActivity()) .load(_path) .fitCenter() .bitmapTransform(new BlurTransformation(getContext(),25)) .into(mImageViewMyInfoTop); 더보기
Set recyclerView span dynamically 출처 | http://gogorchg.tistory.com/entry/Android-androidsupportv4appfragmentgetallowreturntransitionoverlap RecyclerView를 사용할 때, GridLayoutManager를 사용하여 span을 줄 수 있습니다.만약 GridLayout span 이 2로 하고 싶다면 아래와 같이 설정 하면 됩니ㅏㄷ. recyclerView.setLayoutManager(new GridLayoutManager(getActivity(),2); 하지만, 만약 특정 position에서 span을 변경하고 싶을때는 어떻게 해야할 수 있을까요??이럴땐, setSpanSizeLookup 함수를 이용하면 됩니다. gridmanager.setSpanSi.. 더보기
[펌]glide Gride구글에서 공개한 빠르고 효율적인 이미지 로딩 라이브러리 이다. 1. Gradle 라이브러리 추가repositories { mavenCentral() } dependencies { compile 'com.github.bumptech.glide:glide:3.6.1' compile 'com.android.support:support-v4:19.1.0' } 2. 사용방법@Override public void onCreate(Bundle savedInstanceState) { ... ImageView imageView = (ImageView) findViewById(R.id.my_image_view); Glide.with(this).load("http://goo.gl/gEgYUd").into(image.. 더보기
[펌]ButterKnife Library 출처 | http://gogorchg.tistory.com/entry/Android-ButterKnife-%EC%9D%B4%EA%B1%B0-%EC%A0%95%EB%A7%90-%EC%A2%8B%EC%9D%80-Library%EB%8B%A4 우선, 이 글을 보시기전에 Proguard를 적용하실 App은 약간 고려해보세요.저 같은 경우, 여러 Library와 혼동되서 쓰다보니 ButterKnife 쪽에서 Proguard를 하면 찾지 못하는 부분이 있었습니다.그런 분들은 사용 안하시는편이 좋을듯 합니다. ButterKnife를 접하게 된지는 얼마 되지 않았습니다.처음에 annotation으로 멀 하는거지? 하며 크게 관심을 가지지 않았지만,Android 개발할때, 정말 편한 기능 입니다. 몇가지만 공유하고자 이.. 더보기
[펌]Android Image Loader 출처 | http://dev2.prompt.co.kr/31참고 | http://d2.naver.com/helloworld/429368 Android 에서 Image 처리는 Android 개발자의 계속된 숙제였습니다. 한정된 메모리, 네트워크를 사용할 때의 데이터 사용량, 로딩속도 등 많은 부분에 이슈가 있었죠. Android 개발자들은 이러한 문제점을 해결하기 위해 다양한 노력을 해 왔고, 그 결과 다양한 Image Loader Library 가 세상에 공개되어 왔습니다. Volley, Picasso, Android Universal Image Loader(AUIL) 등이 그 예입니다. 살짝 주제를 바꾸어 Google I/O 에 대해서 알아봅시다. Google I/O는 미국 캘리포니아 주 샌프란시스코에서.. 더보기
Adapter / AdapterView Adapter- 외부 데이터 소스와 AdapterView사이의 연결 수단 의미로 사용된다.- 대량의 데이터 처리가 가능하다.- 각 데이터 항목을 위한 뷰를 생성하거나 데이터 소스를 접근하여 데이터 항목을 읽어온다. 메소드 메소드 타입 설명 getCount() int 아이템의 수를 반환 getItem(int position) Object position에 있는 아이템을 객체의 형태로 변환 getItemId(int position) long position에 있는 아이템의 id를 반환 getView(int position, View converView, ViewGroup parent) View position의 위치에 있는 뷰를 그려주는 메소드 AdapterView- Spinner, ListView, Gri.. 더보기
Fragments으로 개발하기 디자인 철학Android가 프래그먼트를 처음 도입한 것은 Android 3.0(API 레벨 11)부터이다.3.0 이상부터 큰화면의 태블릿과 스마트폰이 나오기 시작하면서 하나의 화면을 목표로 했던 Activity로 하기에는 무리가 있다.한 화면에 두개의 Activity가 실행되게 하려면 Activity 두개를 포함하는 상위의 개념이 존재해야하고, 코드 하나로 3.x 미만과 이상버전을 동시에 지원하는 것이 불가능하기 때문에 결국 코드 하나가 더 추가로 만들어져야 한다.Fragment는 기본적으로 태블릿과 같은 큰 화면에서 보다 역동적이고 유연한 UI 디자인을 지원하는 것이 목적이다.개발자가 보기 계층에 복잡한 변경 내용을 관리하지 않아도 그러한 디자인을 사용할 수 있도록 해주고, 한 액티비티의 레이아웃을 여.. 더보기
[ERROR]The specified child already has a parent. You must call removeView() on the child's parent first. ERROR>java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first. 이미 참조하고 있으니 예전에 참조한 부분을 지우고 재설정 하라는 의미 이다.view 는 1개의 parent view 에만 add 할 수 있는데 중복 addView 로 인해 발생하는 문제 이다.이미 해당 view 는 어떤 parent view 에 add 가 된 상태이므로 view 의 parent view 가 뭔지 확인 한 다음에 그 parent view 에서 removeView 를 하면된다. 더보기
app version & store version 현재 버전과 최신버전 가져오기 ex) test 이미지 현재 버전은 build.gradle 파일에서 확인할수 있다.appandroid { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig { applicationId "kr.test" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" 0){ //업데이트 필요 setting_version_bt.setText(R.string.setting_version_new_msg); //버튼 클릭시 플레이 스토어로 이동setting_version_bt.setOnClickListener(new View.OnClickListener() { @O.. 더보기

반응형