Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
629 views
in Technique[技术] by (71.8m points)

google play - Designing Android apps for tablets

In the Play developer console it says:

Your APK does not seem to be designed for tablets

But I have added layouts to layout-sw600dp, layout-sw600dp-land, layout-sw720dp and layout-sw720dp-land folders. The complete manifest (as it is):

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

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

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

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/Theme.Sherlock.Light.DarkActionBar" >
    <activity
        android:name="com.technicosa.unjumble.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name="com.technicosa.unjumble.UserSettingsActivity"
        android:label="@string/title_activity_user_settings" >
    </activity>
</application>

The app runs perfectly on both Nexus 7 and Nexus 10 in the emulator. Also in the developer console under optimization tips it says:

Your Production APK needs to meet the following criteria: Uses available screen space on 10-inch tablets

A screenshot of my app:

enter image description here

While the app seems to run on tablets (I have tested only on emulator), what must be done to fulfill the Play criteria?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

I don't believe that this is a completely automated process. In other words, I think there is someone in Google looking at screen shots from your app making a qualitative judgement (probably an intern). This is my reasoning for arriving at that conclusion:

I have three versions of my app (Irish, UK and USA). They are basically the same with different text. The Irish version was released first and initially I encountered that message. I had implemented the manifest (like yours) and had one or two xml files in layout-sw600dp and layout-sw600dp-land and I couldn't see the cause of the problem. I uploaded a new apk with new screen shots (no xml or manifest changes) and the problem went away. Here is the current status of the Irish app:enter image description here .

Next I implemented the UK version. It displayed "when you did it" as 12th June, the date the APK was uploaded. So at least there is a semblance of consistency in the review process.

Finally - the US version. To reiterate, this is basically the same app with the same xml as the Irish and UK versions and this is my current message:

enter image description here

Now it is quite possible that Google have written some code to look for xmls for large tablets. But if they had, I think my other APKs would be showing that error as well. Therefore, I think that the review process is partly manual.

So my conclusion - a quantitative approach may help (a few more xmls in sw600dp and sw720dp) but don't neglect the qualitative stuff (choose screen shots that don't display empty space !).

Update: re. the "Designed for Phones" message - December 2013

Since I wrote the above Google have introduced the dreaded "Designed for Phones" tagline and "Design your app for tablets" optimisation tips. This appears to be largely based on an automated scan of the apk when you upload it (probably the xml), so the process now seems to be more automated than was previously the case. Here are some points I have discovered which may help others:

1) I was unhappy that Google had designated one of my apps as "designed for phones" and I emailed them and they then removed this designation.

2) On a different app, I was getting the "design your app for 7" tablets" optimisation tip. I added one fragment to my tablet xml in sw600dp like this:

       <FrameLayout
    android:id="@+id/SideTab1"
    android:name="SideTab1"
    android:layout_width="300dp"
    android:layout_height="fill_parent"
    android:layout_marginLeft="20dp"
    /> 

and this did not remove the optimisation tip.

3)However when I made the same change to a second xml in sw600dp then the "design your app for 7" tablets" optimisation tip was replaced by "Your layout should make use of the available space on 10-inch tablets". More importantly, the "designed for phones" designation has now disappeared.

4) Obviously my next step is to make similiar changes in sw720dp.

Things seem to have changed again now (e.g. Google seem to now have removed the "designed for phones" designation in the country in which I am currently residing, and they seem to have relaxed some of their "rules" regarding the "design your app for tablets" message). Apparently, I am now doing "pretty well", which is reassuring news !


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...