2017-03-07 1 views
0

나는 내 웹 앱을 APK로 변환하기 위해 코르도바를 사용했다.Cordova 내장 apk를 설치할 때 구문 분석 오류가 발생할 수 있습니까?

태국에서 앱의 대상 장치는 OTPC (어린이 당 1 태블릿) 태블릿입니다.

이러한 태블릿에는 Google Play가 사용 중지되어 있으므로 앱을 수동으로 설치해야합니다. 나는 알 수없는 출처를 허락하는 것과 같은 모든 일반적인 조치를 취했다.

앱의 -debug 버전을 빌드 한 후 내 갤럭시 탭 3V에 문제없이 설치되었습니다. 또한 학교에서 흔히 볼 수있는 OTPC 장치 중 하나에 쉽게 설치되지만 다른 쪽에서는 유명한 구문 분석 오류가 발생합니다.

두 기기는 Android 4.0.3입니다.

그래서 지금까지 행운을 빕니다와 함께 Cordova config.xml 파일에 다양한 변경을 시도했습니다. 내 문제는이 장치에서 구문 분석 오류의 원인이 무엇인지 표시하지 않고 어둠 속에서 사냥하고 있다는 것입니다.

특정 구문 분석 오류에 대한 자세한 정보를 얻는 방법이 있습니다 (예 : adb를 통해 설치하는 방법).

여기에 가장 최근의 config.xml 파일이 있습니다. 아마도 누군가가 변화를 제안 할 수 있습니다 :

<?xml version='1.0' encoding='utf-8'?> 
<widget id="io.cordova.English_Builder" version="0.9.50" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"> 
<icon src="www/images/formatting/e_b_icon.png" /> 
<name>English_Builder</name> 
<description> 
    English Builder helps Thai students of English to build vocabulary and skills, through competitive timed activities. 
</description> 
<author email="[email protected]" href="https://github.com/Iansamit/English_Builder"> 
    Ian Smith 
</author> 
<content src="index.html" /> 
<plugin name="cordova-plugin-whitelist" spec="1" /> 
<access origin="*" /> 
<allow-intent href="http://*/*" /> 
<allow-intent href="https://*/*" /> 
<platform name="android"> 
    <allow-intent href="*" /> 
</platform> 
<platform name="ios"> 
    <allow-intent href="itms:*" /> 
    <allow-intent href="itms-apps:*" /> 
</platform> 
<plugin name="cordova-plugin-media" spec="~2.3.0" /> 
</widget> 
+0

을 확인하기 위해 안드로이드 매니페스트 파일을 검사? – Gandhi

+0

응답 Ghandi에 감사드립니다. 예, 기본 Cordova "MyApp"를 기반으로합니다. 그 후 나는 config.xml에 대한 그들의 문서를 작업하고 적절하다고 생각하는 것을 변경했다. 최근 변경 사항은 Google Play에서 설치하지 않으므로 에서 로 변경되었습니다. – Thailandian

+0

내가 질문을 제기 한 이유는 언젠가 당신이 붙여 넣기 내용을 config.xml에 복사 할 때 일부 특수 문자와 유니 코드 문자가 config.xml에 복사되어 구문 분석 오류가 발생한다는 것입니다. 내용을 메모장에 한 번 복사 한 다음 config.xml에 복사 해보십시오. 아마도 여분의 공백이나 특수 문자로 인해이 문제가 발생할 수 있습니다. – Gandhi

답변

1

일반적으로 구문 분석 오류는 config.XML 형식이 잘못되었거나 XML에 특수 문자가있는 경우 발생합니다.

이 경우 Android SDK 버전과 관련된 오류 인 것 같습니다. 여기 잡기는 일반적으로 config.XML 관련 문제가 빌드 시간 동안 발생합니다. 그러나이 경우 오류는 설치 중에 간과 한 것입니다.

빌드 중에 config.XML과 관련된 구문 분석 오류가 발생하는 경우 XML 형식이 잘못되었거나 특수 문자가있는 것일 수 있습니다. 설치 중에 구문 분석 오류가 발생하면 Android SDK 호환성 문제 일 수 있습니다.

업데이트 : 당신의 APK 파일을 디 컴파일하고 복사 곳에서이 config.xml에 붙여 않았다 혹시 어떤 안드로이드 SDK 호환성 문제

+0

네, 좀 더 일반적인 대답입니다. 아마도 다른 사람들에게 유용 할 것입니다. 추가 할 수있는 유일한 방법은 apk 파일을 디 컴파일하여 android manifest를 검사하는 것입니다. 그것은 내가 config.xml에서 놓친 것에 대한 단서를 준 명단이었습니다. – Thailandian

+0

@Thailandian이 답변을 업데이트했습니다. 건배 – Gandhi

1

나를 해결책으로 안내해 주신 덕분에. 문제는 내 config.xml에 android-minSdkVersion 또는 android-targetSdkVersion을 넣지 않은 것으로 밝혀졌습니다. 그래서, 매니페스트에서 버전 코드가 디폴트로했다 :

<platform name="android"> 
     <allow-intent href="market:*" /> 
     <preference name="android-minSdkVersion" value="14" /> 
     <preference name="android-targetSdkVersion" value="22" /> 
    </platform> 
: 참고로 4.0.3

에 대한 너무 높은 platformBuildVersionCode = "25", 여기 내 수정 config.xml 파일의 관련 부분입니다

+0

기쁜 당신이 그것을 부 .다. 내 대답을 게시. 도움이된다면 수락하면 다른 사용자들도 혜택을받을 수 있습니다. 건배 – Gandhi

관련 문제