"매니페스트 설정으로 인해 지원되지 않는 기기"라고 나오는데 해결방법은??

790 views
Skip to first unread message

Winny Lee

unread,
Jan 9, 2012, 12:11:17 AM1/9/12
to appspr...@googlegroups.com
1. apk 등록/수정화면을 보면 아래와 같이 나오고 있습니다.
중요한 것은 필수 기기 기능은 2가지 뿐인데 지원하는 기기 는 423개입니다.
 더 많은 기기 기능이 필요하다고 나오는 다른 앱들보다 지원하는 기기 숫자(822개)가 더 적습니다.
sdkversion도 동일하게 했습니다. (7-8에서 7-15로 변경했더니 기기 1개가 늘어나더군요..ㅜㅜ)
그 외 특별히 스크린 등등  필터링 될만한 관련한 제약도 없습니다.
특정 웹서버에 접속이 되는지 체크해서 데이터파일을 다운 받아 저정하는 것으로 인해 wifi체크를 하긴 합니다만...
어떻게 해야 할까요??
2.  <uses-feature android:name="android.hardware.sensor.light" android:required="false"/> 이런 내용을 manifest에 추가하려고 하면 어떻게 할수 있는지요??
3.1 project.xml에 있는 피쳐 목록 중 표준, deprecated 중 어떤 것을 써야 하는 기준이 있는지요?(또는 참조문서)
3.2 표준 피쳐 전체를 선택하면 이 것이 위 마켓 필터링에 영향을 미치는지 알수 있을까요?

직접 하는 것이 처음이라 질문이 좀 되네요..ㅜㅜ 
항상 많은 도움 감사합니다. 
-------------------------------------------------------------------------------------------
* 앱스프레소로 만든 웹앱
이 애플리케이션은 애플리케이션 매니페스트에 정의된 기능을 포함한 기기에서만 사용할 수 있습니다.
화면 레이아웃SMALL NORMAL LARGE XLARGE
필수 기기 기능
android.hardware.wifi
android.hardware.touchscreen
이 애플리케이션은 423개의 기기에서 사용할 수 있습니다 . 
-------------------------------------------------------------------------------------------
* 네이티브로 만든 앱
화면 레이아웃SMALL NORMAL LARGE XLARGE
필수 기기 기능
android.hardware.wifi
android.hardware.touchscreen
android.hardware.screen.portrait
이 애플리케이션은 822개의 기기에서 사용할 수 있습니다  
-------------------------------------------------------------------------------------------
* 아래는 앱스프레소 output/android 폴더에 있는 manifest파일의  일부입니다.
<application android:label="@string/ax_name"
android:icon="@drawable/ax_icon">
<activity android:name=".Activity"
android:icon="@drawable/ax_icon"
android:label="@string/ax_name"
android:configChanges="orientation|keyboard|keyboardHidden"
android:theme="@android:style/Theme.NoTitleBar"
android:screenOrientation="unspecified">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

</application>

<uses-sdk android:minSdkVersion="7"
android:targetSdkVersion="7"
android:maxSdkVersion="15"/>

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

<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.SET_WALLPAPER"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

Winny Lee

unread,
Jan 9, 2012, 3:33:24 AM1/9/12
to appspr...@googlegroups.com
일부 자답>

위 질문 중 1. 3. 번이 연계된 것으로 3번의 [표준피쳐] 목록에서 사용안하는  것을 deselect했더니 1번이 해결되었습니다.
환경에 대한 이해가 부족해서 어떤 것이 사용중인지 확인하는데 시간이 걸리긴 하네요...ㅜㅜ

질문 2번은 당장 필요하지는 않지만, 혹시 방법이 없을까요??

존슨

unread,
Jan 9, 2012, 7:01:31 PM1/9/12
to appspr...@googlegroups.com
2.  <uses-feature android:name="android.hardware.sensor.light" android:required="false"/> 이런 내용을 manifest에 추가하려고 하면 어떻게 할수 있는지요??

manifest 파일에 추가하는 방법은 현재 플러그인 프로젝트를 추가하고, overlay/android에 덮어씌울 AndroidManifest.xml 를 정의하는 방법으로 가능합니다. 이를 위해서는..

1. 앱스프레소 플러그인에 대한 이해 필요

2. 완전한 AndroidManifest.xml 를 overlay/android에 복사.
    => 플러그인 프로젝트 추가 전 앱스프레소 어플리케이션 프로젝트를 빌드하여 output/android/AndroidManifest.xml 를 복사한 뒤 필요한 추가 설정을 작성.
    => 플러그인 프로젝트를 추가하고, 플러그인 프로젝트의 overlay/android/AndroidManifest.xml 로 복사해 두면 추가 작성한 설정이 적용 됩니다. 

overlay를 이용한 설정 변경은 안드로이드 개발에 대한 지식이 필요 하며, 꼭 필요한 경우만 사용하길 권장합니다.

will

unread,
Jan 9, 2012, 7:42:48 PM1/9/12
to appspr...@googlegroups.com

완전한 xml이라면 마지막 단계에서 자동으로 생성되는 xml을 덮어쓸 파일을 미리 만들어서 사용한다는 뜻인듯 하군요~~
하지만..ㅜㅜ 제게는 무리네요^^

답변 감사합니다~ 
Reply all
Reply to author
Forward
0 new messages