Манифест Android, который будет поддерживать Galaxy S4, HTC One

Я пытаюсь создать манифест Android, который Google Play будет отображаться на Samsung Galaxy S4, HTC One и т. д., поскольку текущий не перечисляет те, которые находятся в списке совместимых устройств.

Я искал Stack Overflow, но все советы здесь мне не помогли. Ниже показан манифест, который я использую для нашего приложения...

Мы также пытались полностью удалить <compatible-screens> и оставить только <support-screens>, но все равно не получается...

заранее спасибо

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.application.testapp"
android:versionCode="4"
android:versionName="1.01c"
android:installLocation="auto" >
<uses-sdk android:minSdkVersion="8"  android:targetSdkVersion="17"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<supports-screens 
android:anyDensity="true" 
android:largeScreens="true"
android:normalScreens="true" 
android:smallScreens="true"
android:xlargeScreens="true" 
android:resizeable="true" /> 
<compatible-screens>
<!-- all small size screens -->
<screen android:screenSize="small" android:screenDensity="ldpi" />
<screen android:screenSize="small" android:screenDensity="mdpi" />
<screen android:screenSize="small" android:screenDensity="hdpi" />
<screen android:screenSize="small" android:screenDensity="xhdpi" />
<screen android:screenSize="small" android:screenDensity="480" />
<!-- all normal size screens -->
<screen android:screenSize="normal" android:screenDensity="ldpi" />
<screen android:screenSize="normal" android:screenDensity="mdpi" />
<screen android:screenSize="normal" android:screenDensity="hdpi" />
<screen android:screenSize="normal" android:screenDensity="xhdpi" />
<screen android:screenSize="normal" android:screenDensity="480" />
<!-- all large size screens -->
<screen android:screenSize="large" android:screenDensity="ldpi" />
<screen android:screenSize="large" android:screenDensity="mdpi" />
<screen android:screenSize="large" android:screenDensity="hdpi" />
<screen android:screenSize="large" android:screenDensity="xhdpi" />
<screen android:screenSize="large" android:screenDensity="480" />
<!-- all xlarge size screens -->
<screen android:screenSize="xlarge" android:screenDensity="ldpi" />
<screen android:screenSize="xlarge" android:screenDensity="mdpi" />
<screen android:screenSize="xlarge" android:screenDensity="hdpi" />
<screen android:screenSize="xlarge" android:screenDensity="xhdpi" />
<screen android:screenSize="xlarge" android:screenDensity="480" />
</compatible-screens>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" android:theme="@android:style/Theme.Light">
<uses-library android:name="com.google.android.maps"/> 
<activity 
android:name=".Main"
android:label="@string/app_name" android:theme="@android:style/Theme.Light.NoTitleBar" android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity android:name=".SplashScreen" android:theme="@android:style/Theme.Light.NoTitleBar.Fullscreen" android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN"></action>
<category android:name="android.intent.category.LAUNCHER"></category>
</intent-filter>
</activity>
<activity android:name=".ActivityProducst" android:theme="@android:style/Theme.Light.NoTitleBar" android:screenOrientation="portrait"/>
<activity android:name=".ActivityDetails" android:theme="@android:style/Theme.Light.NoTitleBar" android:screenOrientation="portrait"/>
<activity android:name=".ActivityNews" android:theme="@android:style/Theme.Light.NoTitleBar" android:screenOrientation="portrait"/>
<activity android:name=".ActivityImage" android:theme="@android:style/Theme.Light.NoTitleBar" android:screenOrientation="portrait"/>
<activity android:name=".ActivityAbout" android:theme="@android:style/Theme.Light.NoTitleBar" android:screenOrientation="portrait"/>
</application>
</manifest>

person Some Dude    schedule 15.10.2013    source источник
comment
Что именно вы хотите?? Извините, но не могу понять вашу проблему.   -  person Mitesh Shah    schedule 15.10.2013
comment
Этот манифест при загрузке в Google Play не включает в список поддерживаемых устройств Samsung S4, Htc One, Sony Experia и аналогичные последние устройства ... И я понятия не имею, почему. Итак, что именно мне нужно указать в манифесте, чтобы при загрузке в Google Play SGS4, HTC One были указаны как поддерживаемые...   -  person Some Dude    schedule 15.10.2013
comment
Вам нужно использовать поддерживающие экраны и совместимые экраны по какой-либо другой причине? В противном случае вам не нужно ничего делать, и все устройства будут поддерживаться.   -  person fasteque    schedule 15.10.2013
comment
Не совсем так, значит, вы предлагаете убрать экраны-поддержки и совместимые экраны вообще?   -  person Some Dude    schedule 15.10.2013


Ответы (3)


в моем приложении я использую этот манифест (я изменил имена пакетов и действий):

<?xml version="1.0" encoding="utf-8"?>
<manifest 
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.blabla"
    android:versionCode="8"
    android:versionName="1.6">

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

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

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

        <activity
            android:label="@string/app_name"
            android:name="com.blabla.Activity"
            android:configChanges="orientation" >

            <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:name="com.blabla.Optionen" >
        </activity>

    </application>
</manifest>

В магазине Google Play указано, что он совместим с > 4000 устройств, включая HTC One и SGS4.

Надеюсь, я правильно понял ваш вопрос.

person Tim    schedule 15.10.2013
comment
На самом деле это сработало ... удалил все настройки экрана в манифесте и увеличил целевую версию до 18. - person Some Dude; 15.10.2013

Вы можете выполнить эти настройки в консоли разработчика Android, которая опубликует приложение только на выбранных вами устройствах.

person Reinherd    schedule 15.10.2013
comment
Нет, я могу выбрать, какие устройства ИСКЛЮЧИТЬ, и я действительно хочу включить SGS4, HTC One и так далее... - person Some Dude; 15.10.2013
comment
исключать всех, кроме тех? - person Reinherd; 15.10.2013
comment
как насчет устройств с версией выше 4.0.4 или 4.1 или любой другой? - person Reinherd; 15.10.2013

Я надеюсь, что вы ищете это,

Измените это в Manifest

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

Только это не поможет. Вам нужны разные размеры изображений, разные макеты для разных разрешений.

Изменить:

http://developer.android.com/guide/practices/screens_support.html

Вы должны добавить другую папку для другого макета в папке res -> hdpi, mdpi, ldpi, а для больших экранов вы используете xhdpi (для планшета) и large-hdpi или xlarge (для NXzoom). а также установить изображения и размер текста в разных макетах в соответствии с размером экрана.

person Mitesh Shah    schedule 15.10.2013
comment
Хотите уточнить? У меня есть <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:smallScreens="true" android:xlargeScreens="true" android:resizeable="true" /> в манифесте, вы предлагаете удалить все, что вы не указали выше? - person Some Dude; 15.10.2013
comment
Сделай так же, android:anyDensity="false" - person Mitesh Shah; 15.10.2013