2019. 11. 13. 16:54
ionic2, Angular에서 Error parsing XML: unbound prefix config-file 해결법 개발/ionic2, Angular2019. 11. 13. 16:54
반응형
ionic2, Angular에서 AndroidManifest.xml을 수정할 일이 생겼었다.
ionic2, Angular에서 AndroidManifest.xml를 직접 건드리면 나중에 개발자가 바뀐다거나 platform을 다시 추가할 때,
다시 같은 작업을 해줘야 하는 일이 생기기 때문에 (platform 쪽 소스는 Git이나 svn에 올라가지 않기 때문)
매우 꺼려지는 일 중에 하나였다.
그래서 찾아보니 다행히도 config.xml에서 config-file, edit-config 등등 태그를 이용하면
platform에 있는 파일(xml, plist 등)도 수정할 수 있음을 확인하였다.
그런데 여기서 문제가 하나 발생했다.
config-file 태그를 cordova 공식 홈페이지 대로 따라 해서 적용해보았는데 아래와 같은 오류가 난 것이다.
Execution failed for task ':app:mergeDebugResources'.
> java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: Android resource compilation failed
{{ionic_app_route}}\platforms\android\app\src\main\res\xml\config.xml:80: error: unbound prefix.
구글에 검색해보니 android 네임스페이스를 선언하지 않아서 생긴 문제라
간단히 config.xml 최상위 태그인 widget에
xmlns:android="http://schemas.android.com/apk/res/android" 를 추가하면 되는 일이었다.
참조 : https://cordova.apache.org/docs/en/latest/plugin_ref/spec.html#edit-config https://stackoverflow.com/questions/18871005/error-parsing-xml-unbound-prefix-on-library
반응형