android 安装解析失败清单格式错误

guz6ccqo  于 2023-01-11  发布在  Android
关注(0)|答案(7)|浏览(200)

我尝试了所有方法,重命名包,更改权限等,但我仍然在控制台上看到错误INSTALL_PARSE_FAILED_MANIFEST_MALFORMED。
我尝试从logcat记录日志,这是它说的是“安装PackageLI期间解析失败”和“android.content.pm.PackageParser$PackageParserException:/data/app/vmdl170122893.tmp/base.apk(位于二进制XML文件的第33行):没有有效的android:name”,最后显示“调试器不再活动”
我正在尝试运行在em 21即棒棒糖SDK.

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

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

<uses-feature
    android:glEsVersion="0x00020000"
    android:required="true" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<permission
    android:name="com.example.mymapsv2.permission.MAPS_RECEIVE"
    android:protectionLevel="signature" />

<uses-permission android:name="com.example.mymapsv2.permission.MAPS_RECEIVE" />

<application
    android:allowBackup="true"
    android:icon="@drawable/blue_droid"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="Ca.Rushabh.Mobileproject.MainActivity"
        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="Ca.Rushabh.Mobileproject.About"
        android:label="@string/title_activity_about"
        android:theme="@android:style/Theme.Dialog" >
    </activity>
    <activity
        android:name="Ca.Rushabh.Mobileproject.ToDoList"
        android:label="abcd" />
    <activity
        android:name="Ca.Rushabh.Mobileproject.ToDoDetailActivity"
        android:windowSoftInputMode="stateVisible|adjustResize" />

    <provider
        android:name="Ca.Rushabh.Mobileproject.MyToDoContentProvider"
        android:exported="false"
        android:authorities="com.example.mobileproject.todos.contentprovider" />

    <activity
        android:name="Ca.Rushabh.Mobileproject.ViewAnimationActivity"
        android:label="@string/title_animation" >
    </activity>
    <activity
        android:name="Ca.Rushabh.Mobileproject.ViewAnimation2"
        android:label="@string/title_animation" >
    </activity>
    <activity
        android:name="Ca.Rushabh.Mobileproject.ContactUs"
        android:label="@string/title_activity_contact_us"
        android:theme="@android:style/Theme.Dialog" >
    </activity>
    <activity
        android:name="Ca.Rushabh.Mobileproject.GoogleMapV2"
        android:label="@string/title_activity_google_map_v2" >
    </activity>
    <meta-data
        android:name="com.google.android.gms.version" />
    <meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" />
</application>

</manifest>
bq3bfh9z

bq3bfh9z1#

如果任何人在Android 12(Android S)预览版本得到这个错误.更新您所有的依赖关系到最新的一个,请添加-

android:exported="true"

应用的AndroidManifest.xml文件中声明了<intent-filter>的任何<activity><activity-alias><service><receiver>组件。
请参阅此link和Android 12 API 31的行为更改。

ss2ws0br

ss2ws0br2#

RC.有不止一个问题,我发现了。

  • 将所有软件包名称更改为小写
  • 更新<meta-data>属性,使其具有有效值。

元数据的正确代码:

<meta-data
    android:name="com.google.android.gms.version"
    android:value="@integer/google_play_services_version" />

资料来源:

dnph8jn4

dnph8jn43#

我刚收到这期杂志

failed to install c:\users\nisha jain\documents\grayopus 
project\rxsmile\build\app\outputs\flutter-apk\app.apk: failure 
[install_parse_failed_manifest_malformed: failed parse during 
installpackageli: /data/app/vmdl914617141.tmp/base.apk (at binary xml file 
line #27): com.grayopus.rxsmile.mainactivity: targeting s+ (version 31 and 
above) requires that an explicit value for android:exported be defined when 
intent filters are present] error launching application on sm e625f.

但通过在AndroidManifest.xml中添加以下行解决了这个问题

android:exported="true"
1rhkuytd

1rhkuytd4#

您的包名中有一个大写字母。请尝试重构您的包,使所有字母都小写。为此,在项目面板中,确保您处于Android视图模式,然后单击视图指示器右侧的齿轮,然后确保未选中压缩中间空包。接下来,右键点击包含大写字母的软件包,选择重构-〉重命名。2将其更改为小写,再次检查AndroidManifest.xml是否为小写,如果不是,手动编辑。

00jrzges

00jrzges5#

没有一个建议的解决方案对我有效,所以我发布了这个额外的答案,希望它能帮助其他人。
对我有效的方法是为我的所有活动设置exported值(如@ www.example.com所建议karanatwal.github.io)并更新我的所有依赖项,这些依赖项显然没有设置这个值。
我最初从我的尝试中排除了依赖性部分来修复这个问题,因为在我的研究中我看到(在线)非常具体的错误消息,说这确实是问题(设置exported值),以及确切地指示哪个依赖性不符合它。由于某种原因,我没有得到这个消息。
注意,如果依赖关系的最新版本仍然不符合该规则,则这可能不起作用。

4c8rllxm

4c8rllxm6#

如果您尝试将.9.png文件添加到您的应用程序中,您需要在主Activity元数据部分将xml文件源定义为Android资源,这解决了我的问题:

<meta-data
               android:name="com.google.android.actions
       //add this line
               android:resource="@drawable/sample_button 
       //(here sample_button is the name of your xml file in the drawable folder)"
        />
13z8s7eq

13z8s7eq7#

安装解析失败清单格式错误:安装期间解析失败PackageLI:/data/app/vmdl192287100.tmp/base. apk(位于二进制XML文件的第264行):com.razorpay.RzpTokenReceiver:针对S+(版本31及更高版本)需要在存在Intent过滤器时定义android:exported的显式值'
我尝试了一些不同的方法,但只有当我将compilesdktargetsdk从31更改为30时才有效,如下所示:

compileSdkVersion 30
minSdkVersion 26
targetSdkVersion 30

相关问题