728x90

사진을 촬영하여 이미지를 업로드하기 위한 기능을 테스트하려고 한다.

사진 촬영하여 CROP 하는 곳에서 제대로 처리를 못하고 있어서 라이브러리를 이용해보려고 한다.


안드로이드 스튜디오에서 앱 build.Gradle 을 아래와 같이 수정했더니 에러가 발생한다.


 apply plugin: 'com.android.application'

android {
    compileSdkVersion 22
    buildToolsVersion "25.0.0"

    defaultConfig {
        applicationId "com.tistory.link2me.imageupload"
        minSdkVersion 16
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"

    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:support-v4:22.0.0'
    compile 'com.android.support:appcompat-v7:22.0.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.squareup.okhttp3:okhttp:3.9.0'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.google.firebase:firebase-messaging:10.2.6'
    compile 'com.isseiaoki:simplecropview:1.1.6'
}


roundIcon이 API 25에서 추가된 것이라 에러가 발생한다.

AndroidMenifest.xml 파일 내에 있는 android:roundIcon="@mipmap/ic_launcher"
를 제거해주고 Clean Project를 하면 에러가 사라진다.


AppCompatActivity는 안드로이드 하위버전을 지원하는 액티비티다.
Support Library에 있는 클래스들은 안드로이드 하위버전을 지원하기 위해 존재한다.
안드로이드 4.0 이상부터 지원하겠다고 하면 AppCompatActivity을 쓸 이유가 없다. 그냥 Activity를 쓰면 된다.

public class MainActivity extends AppCompatActivity {

public class MainActivity extends Activity {
로 변경했다.


2017.9.21

- simplecropview 라이브러리를 추가해서 CROP 하는 것은 실패했다.

  구글, 블로그에 나온 방법으로 코드를 구현하여 해결했다.

블로그 이미지

Link2Me

,