[英]App working on the emulator but not on actual devices
當我嘗試在實際設備(已測試Galaxy S7和Galaxy Tab 2)上以調試模式啟動應用程序時遇到問題。 在安裝過程中,將出現一個對話框,指示安裝失敗,並顯示“ INSTALL_PARSE_FAILED_MANIFEST_MALFORMED”錯誤。 錯誤消息以“ <activity>
沒有有效的android:name”繼續。 下面復制的清單文件的第23行是incri(該行對應於“ <application
”行正下方的行)。 據我所知,我給自己的活動起的名字是完全正確的。
更奇怪的是,當在模擬器上啟動時,該應用已安裝並可以完美運行...
我可以添加一個對話框,提示我應該卸載可能已安裝的先前版本,但是我沒有該版本,如果我回答刪除它,它將無法卸載(這次看起來很正常)。
關於什么可能導致此問題的想法嗎?
清單文件:
<?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>
嘗試將軟件包名稱更改為小寫:
package="gl.mescontacts"
重命名您的程序包以僅包含小寫字符。 它不能包含大寫字符。 檢查此答案以獲取更多信息。
如您在清單中定義package="GL.MesContacts"
,活動名稱應該只有.ActivitePrincipale
這樣<activity android:name=".ActivitePrincipale"> .... </activity>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.