5

나는 Google의 Play 스토어에 이미있는 비교적 간단한 앱을 보유하고 있습니다.업데이트 후 APK는 이전보다 더 적은 기기를 지원합니다

이제이 응용 프로그램의 업데이트를 만들었습니다. 이 업데이트의 한 포인트는 내가 ZBar-Scanner를 포함한다는 것입니다. 변경 사항의 나머지 부분은 최소화되어 있으며 내 문제에 영향을 미치지 않아야합니다.

Play 스토어에 내 앱의 최신 버전을 넣었을 때 경고 메시지가 표시됩니다. "경고 : 활성 APK는 이전 APK보다 적은 장치를 지원하지만 일부 사용자는 업데이트를받지 못합니다."

sourceforge.net (http://sourceforge.net/projects/zbar/files/AndroidSDK/)에서 ZBarAndroidSDK-0.2.zip을 다운로드하고 README 파일에 설명 된대로 내 프로젝트로 가져옵니다. .

삼성 갤럭시 3 (GT-I5800 -> 버전 2.2) 및 내 갤럭시 넥서스 (-> 버전 4.2)에서 HTC Wildfire S (-> 버전 2.3.5)로 로컬 앱을 테스트했습니다. 결코 문제가 없었습니다. 모든 것이 효과가있었습니다. 또한 내 보낸 APK를 테스트했지만 문제가 없었습니다.

이제이 APK를 Play 스토어에 추가하고 내 앱을 업데이트하고 테스트 된 기기에 대한 경고를받습니다. HTC Wildfire 나 Samsung Galaxy 3에서 새 버전을 업데이트 할 수 없습니다.

누구든지 나를 도울 수 있고 나에게 문제를 설명 할 수 있습니까?

감사합니다.

편집 :

내 매니페스트 :

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="de.myproject" 
android:versionCode="5" 
android:versionName="2.0" 
android:installLocation="preferExternal" 
> 

<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="11"/> 

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
<uses-permission android:name="android.permission.CAMERA"/> 
<uses-feature android:name="android.hardware.camera" android:required="false"/> 

<application 
    android:uiOptions="splitActionBarWhenNarrow" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    > 

    <!-- enable the search dialog to send searches to SearchableActivity throughout the application --> 
    <meta-data 
     android:name="android.app.default_searchable" 
     android:value=".SearchableActivity" /> 

    <activity 
     android:label="@string/app_name" 
     android:name=".MainActivity" 
     android:screenOrientation="portrait" 
     android:theme="@style/Theme.NoBackground">         

     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 

    </activity> 

    <activity 
     android:label="@string/app_name" 
     android:screenOrientation="landscape" 
     android:name=".zbar.ZBarScannerActivity">        
    </activity> 

</application> 

그리고 ZBar의 매니페스트 :

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="net.sourceforge.zbar.android.CameraTest" 
    android:versionCode="1" 
    android:versionName="1.0"> 

<uses-sdk android:minSdkVersion="8" /> 
<uses-permission android:name="android.permission.CAMERA" /> 
<uses-feature android:name="android.hardware.camera" /> 
<uses-feature android:name="android.hardware.camera.autofocus" /> 

<application android:label="@string/app_name" > 
    <activity android:name="CameraTestActivity" 
       android:label="@string/app_name"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
</application> 

+0

AndroidManifest의 내용을 붙여 넣을 수 있습니까? 그리고 ZBar의 명단도 있습니다. 라이브러리에는 자체 매니페스트 파일도 있습니다. –

+3

업데이트 된 버전과 이전 버전의 매니페스트 파일을 비교하면됩니다. 이전 버전에는 없었던 새 버전에 새로운 / 태그가 있는지 확인하십시오. – Krishnabhadra

+0

내 매니페스트와 ZBar의 차이점은 다음과 같습니다. _ _. 그러나 이것이 이것이 문제라고 생각하지 않습니다. 제 생각에 Google은 ZBar-Project에 의해 추가 된 라이브러리에 문제가 있습니다. armeabi, armeabi-v7a 및 x86 프로젝트를 가져 오면 3 개의 폴더가 생깁니다. 그래서 나는 구글이 armeabi가 armeabi-v6와 같은 것이라고 깨닫지는 않는다고 생각한다. 누구든지이 문제를 어떻게 해결할 수 있습니까? – owe

답변

3

우선, 사용 된 장치의 모든 변경 사항은 매니페스트의 결과 여야합니다. 이것이 Android 마켓 (Google Play)에서 앱이 어떤 기기를 사용할 수 있는지를 결정하는 유일한 방법입니다. 보았 듯이 한 가지 차이점은 자동 초점 요구 사항이 있다는 것입니다. 이 행을 다음과 같이 변경하면 제대로 작동합니다.

<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"> 

기본적으로이 기능을 사용할 수는 있지만 필수는 아닙니다. 이렇게하면 이전의 모든 장치와 완벽하게 호환 될 수 있습니다. 자세한 내용은 this answer을 참조하십시오.

주 앱에서 카메라가 필요하지 않지만 zbar에서 카메라를 필요로한다는 사실을 기억해야합니다. 이것은 또한 차이를 만들 수 있습니다.

+0

안녕하세요 PearsonArtPhoto, 많이 thnks. "자동 초점"으로 새 버전을 업데이트하려고합니다. – owe

+1

일반적으로 대답을 좋아하면 upvote/accept해야합니다. – PearsonArtPhoto

+0

죄송합니다, 다음 번에 :). 이제 "autofocus"기능으로 내 앱을 업로드했지만 아무런 효과가 없습니다. 또한 libs (-> armeabi)에 대한 나의 첫 번째 가정이 맞다고 생각하지 않습니다. 나는 두 장치 (Wildfire S, Galaxy 3)에서 cpu_abi를 확인했으며 둘 다 "armeabi"를 가지고 있습니다. 아무도 같은 경험을 했나요? 나는 정말로 그 문제가 뭔지 이해하지 못한다. – owe

1

태블릿에서 내 응용 프로그램 (Zbar 스캐너 사용)에이 문제가 발생했습니다. Zenithink C93 (http://www.zenithink.com/Eproducts_C93.php). Zenithink 장치와 호환되는 응용 프로그램을 만들어야했습니다.

Google Play 스토어에 앱을 게시했습니다.

내 매니페스트이 줄을했다 "이 이 기기와 호환되지 않는 항목입니다": 나는 Zenithink C93에 응용 프로그램을 설치했을 때 나는 오류가 발생했습니다

<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"> 

를하지만 나에게 도움이되지 않았다.

또한 나는이 지원-화면 태그했다 : <uses-feature android:name="android.hardware.camera"/> 응용 프로그램이되었다 위해 = "false"를 요구 : 이상하게

<supports-screens 
android:smallScreens="false"                android:normalScreens="false" 
android:largeScreens="true" 
android:xlargeScreens="true" 
android:anyDensity="true"/> 

,하지만 긴 검색 솔루션 I 완전히 제거 지원 - 화면 태그와 안드로이드 넣어 후 Zenithink 장치와 호환됩니다. 응용 프로그램이 거의 모든 장치와 호환되기 때문에

... 
<uses-sdk 
    android:minSdkVersion="14" 
    android:targetSdkVersion="15"/> 

<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
<uses-permission android:name="android.permission.READ_PHONE_STATE"/> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 

<uses-permission android:name="android.permission.CAMERA" /> 
<uses-feature android:name="android.hardware.camera" android:required="false"/> 
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/> 

<application... 

이 좋은 해결책이 아니다,하지만 어쩌면 누군가 도움이 될 것입니다 :

지금 내 적하 목록은 다음과 같습니다.

+0

카메라가 상당히 일반적인 장비라고 생각합니다. Zenithink C93 카메라가 없습니까? – juejiang

+0

Zenithink C93에는 전면 카메라 (2mpx)가 있습니다. – anivaler

관련 문제