본문 바로가기

프로그래밍/Android 짜투리 지식

[android] Android studio xml rendering e Android Studio xml preview에서 아래와 같은 오류 메시지와 함께 Layout이 안나올 때가 있다. Rendering Problems The following classes could not be instantiated:- android.support.v7.app.WindowDecorActionBar (Open Class, Show Exception, Clear Cache) Tip: Use View.isInEditMode() in your custom views to skip code or show sample data when shown in the IDE Exception Details java.lang.NullPointerException at android.support.v7.a.. 더보기
[android] SSO와 Service SSO를 구현하면서 아주 조금(0.1%)의 OAuth와 Service(AIDL)을 건드려봤다. AIDL - Android Interface Definition Language Android Application간의 통신수단Application을 Server와 Clinet로 굳이 나누었을 때, Server는 aidl을 정의하고 Service를 등록하고 구동한다.Client는 구동중인 Service를 찾아서 binding 한다. 그렇게 바인딩 된 객체를 통해 aidl에 정의된 함수를 Client가 호출하고 Server가 반환 할 수 있다. SSO - Sing Sign On https://ko.wikipedia.org/wiki/%ED%86%B5%ED%95%A9_%EC%9D%B8%EC%A6%9D 통합인증. 단일.. 더보기
[android] onTouchEvent OnTouchEvent에 대한 메모 1. OnInterceptEvent는 OnTouchEvent에서 이뤄질 행동을 결정하는 단계이다. 더보기
[android] Behavior 다 이해하고 작정하고 적는것이 아니고, 적어가면서 가다듬는 용임 Android design support library와 함께 등장한 BehaviorCoordinatorLayout이 등장하면서 Scroll을 제어하기 위해 제시한 방법이다. Design Support Library( 링크 ) 를 소개할때 보이는 AppBarLayout을 감싸서 스크롤을 제어하는 모습을 볼 수 있다. 그때까지는 아마 이러한 형태의 View를 구현하려면 가장 먼저 떠올리는것이 아마 ParallaxView( 링크 )가 아니었나싶다. (이제는 모두가 CoordinatorLayout을 떠올린다.) 그런데 CoordinatorLayout을 써본 사람이라면 fling시 누구나 이런 말을 했을것이다. 100%"이거 아닌데..." 관련 동.. 더보기
[android] 인상적인 View - ContextMenu https://github.com/Yalantis/Context-Menu.Android 더보기
[android] attr/actionbarSize android.R.attr.actionBarSize 와 R.attr.actionBarSize는 다르다. AppCompat-v7 은 actionBarSize는 56dp로 R.attr.actionBarSize를 참조해야 한다. android.R.attr.actionBarSize는 플랫폼에서 정의하고 있는 값으로 48dp의 값을 가진다. 참고 주소http://stackoverflow.com/questions/26449195/new-theme-appcompat-actionbar-height 더보기
[android] 4.4 webview 파일 첨부 openFileChooser가 킷캣(os ver 4.4) 에서 변동이 생겨 킷캣 이상에서 webview가 이 함수를 호출하지 못한다. 롤리팝에서는 openFileChooser가 Deprecated 되고 onShowFileChooser라는 것이 추가됨 더보기
[android] code style 1. 개요개발 시 동일한 코드 모형을 지향함으로써 가독성 및 협업 효율 증대를 위함 2. 참고 사이트 android code stylehttp://source.android.com/source/code-style.htmljavadoc conventionhttps://developers.google.com/java-dev-tools/codepro/doc/features/audit/audit_rules_com.instantiations.assist.eclipse.auditGroup.javadocConventions#com.instantiations.assist.eclipse.audit.fieldJavadoc3. 참고 파일android-formatting.xmlOpen Eclipse and go to Wind.. 더보기
[android] Lollipop (v5.x) service 오류 targetSdkVersion을 21로 맞추고 빌드를 하면 Process: com.myapp, PID: 6073 java.lang.IllegalArgumentException: Service Intent must be explicit: 위와 같은 오류가 발생한다.뭘 명확하게 하라는건데, 오류가 난 곳을 보면 Service의 Action을 특정 문자열로 사용하고 있을 것이다.이걸 특정 패키지를 지정해주면 오류가 없어진다.'어느 패키지(앱) 건지 지정해라.' 정도로 해석하면 되겠다.intent.setPackage("com.myapp")을 추가 특정 문자열로 하면 namespace관련 오류 발생 가능성이 있나보다. 더보기
[android] sqlite 사용하기 SQLite를 사용하기위해서는 1. SQLiteOpenHelper 클래스 생성2. 생성자에 Database name를 전달함으로써 SQLiteOpenHelper안에서 서 SQLiteDatabase.openDatabase() 또는 mContext.openOrCreateDatabase()로 Database를 생성또는 다시 연다.4. Table 생성3. DML 구현 끗. SQLite를 사용하는데에 SQLite 클래스 SQLiteOpenHelperSQLite의 생성자는 SQLiteOpenHelper(Context context, String databaseName, CursorFactory factory, int version)onCreate()에서 SQLiteDatabase 인스턴스로 table 생성 쿼리를 .. 더보기