如何让android程序与所有版本兼容

时间:2015-08-30 03:00:14

标签: android

我在不同的Android版本上运行我的应用时遇到问题。实际上,我的应用程序运行的版本高达4.3,但之后发布的版本没有。我希望我的应用程序在最高5.0的版本上运行。我需要帮助才能达到我想要的目标。这里的任何人都可以帮助我吗?

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

    <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="22" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.RECEIVE_SMS" /> 
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.SEND_SMS"/>   
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/logo"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".SplashScreen"
            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.example.hurryapppointalert_client.CreateAccount"
    android:label="@string/app_name"></activity>

<activity 
    android:name="com.example.hurryapppointalert_client.MainActivity"
    android:label="@string/app_name"></activity>
<activity 
    android:name="com.example.hurryapppointalert_client.LoginPage"
    android:label="@string/app_name"></activity>


        <receiver android:name=".TextMessageReceiver"> 
            <intent-filter> 
                <action android:name="android.provider.Telephony.SMS_RECEIVED" /> 
            </intent-filter> 
        </receiver>

    </application>

</manifest>

logcat的:

08-30 08:57:34.494: E/AndroidRuntime(29551): FATAL EXCEPTION: main

08-30 08:57:34.494:E / AndroidRuntime(29551):进程:com.example.hurryapppointsalert_point,PID:29551 08-30 08:57:34.494:E / AndroidRuntime(29551):java.lang.IllegalArgumentException:无效的邮件正文 08-30 08:57:34.494:E / AndroidRuntime(29551):在android.telephony.SmsManager.sendTextMessage(SmsManager.java:287) 08-30 08:57:34.494:E / AndroidRuntime(29551):at com.example.hurryapppointsalert_point.MainActivity $ 1.onClick(MainActivity.java:63) 08-30 08:57:34.494:E / AndroidRuntime(29551):在android.view.View.performClick(View.java:5156) 08-30 08:57:34.494:E / AndroidRuntime(29551):在android.view.View $ PerformClick.run(View.java:20755) 08-30 08:57:34.494:E / AndroidRuntime(29551):在android.os.Handler.handleCallback(Handler.java:739) 08-30 08:57:34.494:E / AndroidRuntime(29551):在android.os.Handler.dispatchMessage(Handler.java:95) 08-30 08:57:34.494:E / AndroidRuntime(29551):在android.os.Looper.loop(Looper.java:145) 08-30 08:57:34.494:E / AndroidRuntime(29551):在android.app.ActivityThread.main(ActivityThread.java:5832) 08-30 08:57:34.494:E / AndroidRuntime(29551):at java.lang.reflect.Method.invoke(Native Method) 08-30 08:57:34.494:E / AndroidRuntime(29551):at java.lang.reflect.Method.invoke(Method.java:372) 08-30 08:57:34.494:E / AndroidRuntime(29551):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1399) 08-30 08:57:34.494:E / AndroidRuntime(29551):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)

1 个答案:

答案 0 :(得分:0)

<uses-sdk>标记与此相关。在该标记的documentation中,您可以看到您配置它的方式并不会阻止您的应用安装在所需的目标上。

如果您希望与所有版本的Android兼容,只需删除android:minSdkVersion,它就会默认为版本1.如果您还未设置android:maxSdkVersion,则有效地允许安装您的应用在所有版本的Android上。

那就是说,鉴于你的AndroidManifest,我认为这个问题根本不在你的AndroidManifest中。