应用于模拟器但未在实际设备上运行的应用

时间:2017-08-21 15:04:04

标签: java android android-manifest

当我尝试在实际设备(Galaxy S7和Galaxy Tab 2测试)上以调试模式启动我的应用程序时出现问题。在安装过程中,会出现一个对话框,指示安装失败并显示&#34; INSTALL_PARSE_FAILED_MANIFEST_MALFORMED&#34;错误。错误消息继续&#34; <activity>没有有效的android:name&#34;。下面复制的清单文件的第23行是有罪的(该行对应于&#34; <application&#34;行下面的行)。据我所知,我给我的活动的名字是完全正确的。

更奇怪的是,在模拟器上启动时,应用程序安装完毕并且运行正常......

我可以添加对话框建议我应该卸载可能已安装的旧版本,但我没有,如果我回答删除它,则无法卸载它(这次,这次看起来正常)。

有什么可能导致这个问题的想法吗?

清单文件:

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

<uses-sdk
    android:minSdkVersion="21"
    android:targetSdkVersion="26">
</uses-sdk>

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

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

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

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

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

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme">

    <activity
        android:name="GL.MesContacts.ActivitePrincipale"
        android:label="@string/app_name">

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

    </activity>

    <receiver
        android:enabled="true"
        android:exported="false"
        android:label="string resource"
        android:name="GL.MesContacts.RecepteurChangementEtatTelephone">

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

   </receiver>

</application>

3 个答案:

答案 0 :(得分:2)

尝试将包名更改为小写:

package="gl.mescontacts"

答案 1 :(得分:1)

将程序包重命名为仅包含小写字符。它不能包含大写字符。 查看this answer了解详情。

答案 2 :(得分:0)

如您在联系人List中定义的那样,活动名称应该只有package="GL.MesContacts"这样.ActivitePrincipale