sourceSets는 gradle 빌드에서 각 모듈 ( 기본 생성시 app이라는 어플리케이션 모듈이 있죠)이 빌드 될때 참조될 소스 세트를 가르킵니다.
보통 지정할 필요가 없지만 경로가 다른곳에 있게 된다면 정의해줘야 합니다.
sourceSets.main은 빌드시 연결할 소스셋트 중 main 항목 소스의 경로를 정의합니다.
원래 main의 jniLibs 기본 경로는 "src/main/jniLibs"입니다.
jniLibs.srcDir 'src/main/libs'
위 코드는 기본 경로를 쓰지않고 libs 폴더를 쓰겠다고 정의한거죠.
만약 flavor를 purchase, demo 처럼 만들게 되면 해당 flavor로 빌드 할때는 sourceSets.purchase, sourceSets.demo 처럼 정의해서 소스 경로를 빌드시스템에 알려줄 수 있죠.
jniLibs 폴더는 so파일의 디렉토리며, 현재 사용하는 so파일이 없다면 지우셔도 무방합니다.
그런데... 에러는 의존 항목에서 오류 나는거 보니 dependencies(외부라이브러리)의 compile 중 잘못된 것을 찾아보셔야 할 듯 한데요...
원격 저장소 형식이 잘못 되었다던가... jar이 아닌 라이브러리가 libs에 있다던가...