본문 바로가기

2017/07

[Kotlin] execution failed for task app compiledebugaidl AIDL 파일은 Service와 이벤트 나 데이터를 교환하기 위해 정의하는 파일 입니다. 참고 : http://gogorchg.tistory.com/entry/Android-AIDL-%ED%8C%8C%EC%9D%BC-%EC%98%88%EC%A0%9C AIDL 파일을 사용하고자 할 때, 빌드 중에 아래 와 같은 에러가 보이기도 한다. execution failed for task app compiledebugaidl 아래는 StackOverFlow에 올라와 있는 참고 에러 입니다. Error:Execution failed for task ':library:compileReleaseAidl'. > java.lang.RuntimeException: com.android.ide.common.process.Pro.. 더보기
[Android] scrollview match_parent not working ScrollView 안에 있는 View에 match_parent를 줬는데도 높이가 변경이 되지 않는다. 위 소스를 보면 간단하다. NestedScrollView 안에 TextView가 들어 있다.layout_height 값이 match_parent로 되어 있지만, 아래와 같이 높이가 변경 되지 않았다. 이럴 경우 ScrollView에 속성 하나만 추가해주면 된다. android:fillViewport="true" 위 속성만 추가 해주면 된다.그럼 ScrollView 안에 있는 View를 Strech 해주는 역할을 합니다. 출처: https://stackoverflow.com/a/10211418 참고 하세요. 더보기
[iOS] Use UILabel in UIScrollView with Autolayout UILabel 에 표시할 텍스트 값이 길어질 경우, Scroll을 이용하기도 한다.이럴 경우 UITextView를 이용하면 쉽게 제어가 가능하다. 하지만, UITextView를 사용할 경우 텍스트 세로 정렬이 힘들다.기본적으로 Scroll이 할당되어 있어서 그런 듯 하다. 만약, 텍스트가 짧을 경우는 가운데에 표시 하고텍스트가 길어질 경우 스크롤로 보여주고 싶을 경우는 어떻게 하는게 편할까?? 여러 테스트를 해본 결과, 전 UILabel을 UIScrollView로 감싸는 형태로 했다. 아래가 설정이 가장 중요하다! 1. ScrollView와 Label Bottom을 일치 시킨다. (완전히 일치 시킬 필요는 없ㄷ가.)2. ScrollView와 Label의 Height를 '>=' 로 설정 한다. 혹시 필요하.. 더보기
[iOS] UITextView Scroll to top UITextView를 로드 하고 나서 보면 Scroll이 생성되는 것 까지는 좋지만,하단에 위치 되는 문제점이 발생한다. 그래서 Scroll을 Top으로 이동시키고자 할 경우 여러가지 방법이 있지만 저같은 경우 아래 방법으로 하는 편이 직관적이고 동작도 원활하게 이루어 졌다. let contentHeight = uiTextView.contentSize.height let offSet = uiTextView.contentOffset.x let contentOffset = contentHeight - offSet uiTextView.contentOffset = CGPoint(x: 0,y: -contentOffset) Content 실제 높이 값으로 Offset을 이동 시키는 소스이다.참고하세요. 출처 : h.. 더보기
[Android] HostnameVerifier에 대한 Warning이 떴을 경우 구글 플레이에 앱을 등록할 때 아래와 같은 보안 알림을 받을 수도 있다.이것이 무엇인가?? HostnameVerifier를 안전하게 사용하고 있지 않다는 건데 혹시 소스가 아래와 같은 형태로 되어 있지 않나 확인해보자. try { TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() { public X509Certificate[] getAcceptedIssuers() { X509Certificate[] myTrustedAnchors = new X509Certificate[0]; return myTrustedAnchors; } @Override public void checkClientTrusted(X509Certificate[].. 더보기
[펌] 객체지향 개발 5대 원리: SOLID 출처 : http://www.nextree.co.kr/p6960/현재를 살아가는 우리들은 모두 일정한 원리/원칙 아래에서 생활하고 있습니다. 여기서의 원칙 이라 함은 좁은 의미로는 개개인의 사고방식이나 신념, 가치관 정도가 될 수가 있겠고, 넓게는 한 국가의 통치 이념이나 통치 방법 정도가 되겠습니다. 그럼 우리는 왜 이런 원칙들 아래에서 생활하고 있는 걸까요? 이거다라고 단정할 수는 없지만 그건 아마도 그런 원칙들이 개인의 삶을 윤택하게 하고 국민들의 삶의 질을 향상 시키는 데 보다 효율적이고 효과적이기 때문입니다.마찬가지로 입증된 객체지향 디자인 원리들을 사용하면 좀 더 유지보수하기 쉽고, 유연하고, 확장이 쉬운 소프트웨어를 만들 수 있습니다. 이 원리들은 그 크기를 대비해 보면 패턴보다 훨씬 작지만.. 더보기
[iOS] CocoaPod 추가 해보기 ## CocoaPod 추가 방법1. Terminal을 실행 시켜 아래 명령어를 실행 시켜 주세요. sudo gem install cocoapods 결과 화면 2. 이제 프로젝트를 하나 만드세요. 그다음 Terminal에서 해당 프로젝트 경로로 이동 하세요. 3. Podfile을 만들어 보겠습니다. pod init 위 명령어를 실행 하면 기본적으로 형태에 Podfile이 생성 됩니다. 이제 Podfile을 수정 하겠습니다. open -a Xcode Podfile 위 명령어를 치면 아래와 같은 텍스트를 확인 할 수 있습니다. ㅔㅐ 아래는 Alamofire defendency를 추가한 형태 입니다. # Uncomment the next line to define a global platform for your.. 더보기
[Android][Kotlin] Databindg과 Kotlin 사용 시 Android 에서 제공해주는 Databinding을 Kotlin으로 사용하고자 할 경우,빌드에서는 에러가 발생합니다. Error:Execution failed for task ':app:compileDebugJavaWithJavac'. Unresolved reference: databinding Error:Execution failed for task ':app:compileDebugKotlin'. 위와 같은 에러가 발생 할 경우 아래와 같이 수정해보세요. /build.gradle // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { ext.kotlin_.. 더보기