首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我的应用程序仍然不兼容平板电脑。

我的应用程序仍然不兼容平板电脑。
EN

Stack Overflow用户
提问于 2014-07-23 06:51:53
回答 2查看 237关注 0票数 0

我做了很多事情,试图使我的应用程序与平板电脑兼容,但没有任何效果。以下是我尝试过的:

  • 我有5个文件夹可绘制(ldpi,mdpi,hdpi,xhdpi,xhdpi),每个文件夹包含相同大小的图像。
  • 我有3个布局文件夹(小、中、大),每个人都包含相同的xml。
  • 我添加了这段代码,并使我的应用程序所使用的电话成为可能:

  • 还为支持的屏幕添加了以下代码:
  • 我还有MinSDKto8。

真正令我困惑的是,我已经有一个应用程序不使用这些,它的min是8,它说它与平板电脑兼容。它只有绘图文件夹,布局文件夹,在这个应用程序中我也有外部的/res文件夹,图像文件夹,像图片-ldpi,图片-hdpi等,与我在绘图文件夹中的图像相同。

通过谷歌,我对第一个应用程序所做的事情现在应该已经成功了,但它没有。

我对平板电脑上不起作用的应用程序的说明:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.myapp"
    android:versionCode="6"
    android:versionName="1.0.6" >

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

    <uses-permission android:name="android.permission.SEND_SMS" />
    <uses-permission android:name="android.permission.READ_SMS" />
    <uses-permission android:name="android.permission.RECEIVE_SMS" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.GET_TASKS" />

    <uses-feature
        android:name="android.hardware.telephony"
        android:required="true" />
    <uses-feature
        android:name="android.hardware.camera"
        android:required="false" />
    <uses-feature
        android:name="android.hardware.camera.front"
        android:required="false" />

    <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/olympialogo"
        android:launchMode="singleTop"
        android:logo="@drawable/olympialogo"
        android:theme="@style/AppTheme" >
        <receiver
            android:name="com.myapp.BootCompleted"
            android:enabled="true"
            android:exported="false" >
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
        </receiver>

        <service android:name="com.myapp.BackgroundActivity" />

        <receiver android:name="com.myapp.SMSreceiver" >
            <intent-filter>
                <action android:name="android.provider.telephony.SMS_RECEIVED" >
                </action>
            </intent-filter>
        </receiver>

        <activity
            android:name="com.myapp.Splash"
            android:label="@string/title_activity_splash"
            android:launchMode="singleTop"
            android:screenOrientation="sensorPortrait"
            android:theme="@android:style/Theme.NoTitleBar" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.myapp.MainActivity"
            android:label="@string/app_name"
            android:screenOrientation="sensorPortrait" >
            <intent-filter>
                <action android:name="splashscreen" />

                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.myapp.NumbersActivity"
            android:launchMode="singleTop"
            android:screenOrientation="sensorPortrait" >
        </activity>
        <activity
            android:name="com.myapp.CodesActivity"
            android:launchMode="singleTop"
            android:screenOrientation="sensorPortrait" >
        </activity>
        <activity
            android:name="com.myapp.SendCode"
            android:launchMode="singleTop"
            android:screenOrientation="sensorPortrait" >
        </activity>
        <activity
            android:name="com.myapp.SettingsActivity"
            android:launchMode="singleTop"
            android:screenOrientation="sensorPortrait" >
        </activity>
        <activity
            android:name="com.myapp.AllMessages"
            android:launchMode="singleTop"
            android:screenOrientation="sensorPortrait" >
        </activity>
        <activity
            android:name="com.myapp.ButtonsActivity"
            android:launchMode="singleTop"
            android:screenOrientation="sensorPortrait" >
        </activity>
        <activity
            android:name="com.myapp.OutputActivity"
            android:launchMode="singleTop"
            android:screenOrientation="sensorPortrait" >
        </activity>
        <activity
            android:name="com.myapp.AboutActivity"
            android:launchMode="singleTop"
            android:screenOrientation="sensorPortrait" >
        </activity>
        <activity
            android:name="com.myapp.Help"
            android:launchMode="singleTop"
            android:screenOrientation="sensorPortrait" >
        </activity>
        <activity
            android:name="com.myapp.TechInfo"
            android:launchMode="singleTop"
            android:screenOrientation="sensorPortrait" >
        </activity>
    </application>

</manifest>

这是该应用程序的清单,该应用程序兼容平板,但在清单中根本没有设置:

代码语言:javascript
复制
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="lol.loltimers"
    android:versionCode="3"
    android:versionName="1.3" >

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

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

    <application
        android:icon="@drawable/lolicon"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
            android:label="@string/activity_main"
            android:screenOrientation="portrait" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".TimersActivity"
            android:label="@string/activity_timers"
            android:screenOrientation="portrait" >
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.example.loltimers.MainActivity" />
        </activity>
        <activity
            android:name=".ThreeTimersActivity"
            android:label="@string/activity_three_timers"
            android:screenOrientation="portrait" >
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.example.loltimers.MainActivity" />
        </activity>
    </application>

</manifest>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-23 07:37:59

您需要在绘图中设置不同的文件夹。

对于选项卡,您必须将其作为宠物选项卡进行冲突。

  • 可绘制-大型- mdpi //用于600x1024 mdpi选项卡
  • 可绘制-大- hdpi //用于hdpi选项卡
  • 可绘制-大ldpi//用于xhdpi选项卡

然后对维度文件进行更改。

  • 值-sw600dp //用于7英寸选项卡
  • 值-sw800dp //用于8英寸选项卡

如果你有特殊的布局要求,那么你需要做一个不同的布局。

  • 布局-大
  • 布局-xlarge

检查这个链接http://android-developers.blogspot.in/2011/07/new-tools-for-managing-screen-sizes.html

票数 2
EN

Stack Overflow用户

发布于 2014-07-23 07:39:47

你需要设置

代码语言:javascript
复制
 <uses-feature
        android:name="android.hardware.telephony"
        android:required="false" />

并在运行时检查设备是否具有消息传递功能。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24903649

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档