1

所以我的应用程序有问题,它具有发送短信的功能。但是,如果没有该功能,它也可以正常工作。我得到了人们无法在平板电脑上安装它的信息。那么我能做什么,在平板电脑上禁用该功能,但在手机上保留它。

那是我的清单:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mycompany.myapp"
android:versionCode="1"
android:versionName="1.0" >

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

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

<application
    android:icon="@drawable/ikona"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MainActivity"
        android:label="@string/title_activity_main"
        android:screenOrientation="portrait">

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

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

有办法吗?

4

1 回答 1

5

如果您的应用在没有SMS功能的情况下也能正常运行,您可能需要uses-featureAndroidMainfest.xml

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

<uses-feature>

句法:
<uses-feature android:name="string" android:required=["true" | "false"] android:glEsVersion="integer" />

包含在:
<manifest>
描述:
声明应用程序使用的单个硬件或软件功能。

声明的目的<uses-feature>是通知任何外部实体您的应用程序所依赖的硬件和软件特性集。该元素提供了一个 required 属性,可让您指定应用程序是否需要并且在没有声明的功能的情况下无法运行,或者它是否更喜欢拥有该功能但可以在没有它的情况下运行。由于功能支持可能因 Android 设备而异,因此该<uses-feature>元素在让应用程序描述其使用的设备变量功能方面发挥着重要作用。

通常,您应该始终确保为<uses-feature>应用程序所需的所有功能声明元素。

声明<uses-feature>的元素仅供参考,这意味着 Android 系统本身在安装应用程序之前不会检查设备上的匹配功能支持。但是,其他服务(例如Google Play)或应用程序可能会检查您的应用程序的<uses-feature>声明,作为处理或与您的应用程序交互的一部分。

参考:http:
//developer.android.com/guide/topics/manifest/uses-feature-element.html

于 2013-05-06T12:07:31.663 回答