即使将签名的APK在Android Studio 3.1.3中成功生成,将APK上传到Google Play商店时也遇到以下错误
上传失败 您上传了带有无效签名的APK(了解有关签名的更多信息)。来自apksigner的错误:错误:JAR_SIG_MISSING_ZIP_ENTRY_REFERENCED_IN_MANIFEST:在APK中找不到META-INF / MANIFEST.MF引用的资产/ www / images / appicon / Icon条目。没有名字
谁能告诉我在哪里可以找到此错误或如何解决此错误?
非常感谢
<?xml version='1.0' encoding='utf-8'?>
<manifest android:hardwareAccelerated="true" android:versionCode="127" android:versionName="0.1.997" package="fyt.cordova.app" xmlns:android="http://schemas.android.com/apk/res/android">
<supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" />
<uses-permission android:name="android.permission.INTERNET" />
<application android:hardwareAccelerated="true" android:icon="@mipmap/icon" android:label="@string/app_name" android:supportsRtl="true">
<activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleTop" android:name="MainActivity" android:screenOrientation="portrait" android:theme="@android:style/Theme.DeviceDefault.NoActionBar" android:windowSoftInputMode="adjustResize">
<intent-filter android:label="@string/launcher_name">
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="flavoryt" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:host=" " android:pathPrefix="/" android:scheme=" " />
</intent-filter>
</activity>
<service android:name="com.google.android.gms.analytics.CampaignTrackingService" />
<receiver android:exported="true" android:name="com.google.android.gms.analytics.CampaignTrackingReceiver">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
<provider android:authorities="${applicationId}.provider" android:exported="false" android:grantUriPermissions="true" android:name="org.apache.cordova.camera.FileProvider">
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/camera_provider_paths" />
</provider>
<activity android:label="@string/multi_app_name" android:name="com.synconset.MultiImageChooserActivity" android:theme="@android:style/Theme.Holo.Light" />
<provider android:authorities="${applicationId}.sharing.provider" android:exported="false" android:grantUriPermissions="true" android:name="nl.xservices.plugins.FileProvider">
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/sharing_paths" />
</provider>
<amazon:enable-feature android:name="com.amazon.device.messaging" android:required="false" xmlns:amazon="http://schemas.amazon.com/apk/res/android" />
<service android:exported="false" android:name="com.onesignal.ADMMessageHandler" />
<receiver android:name="com.onesignal.ADMMessageHandler$Receiver" android:permission="com.amazon.device.messaging.permission.SEND">
<intent-filter>
<action android:name="com.amazon.device.messaging.intent.REGISTRATION" />
<action android:name="com.amazon.device.messaging.intent.RECEIVE" />
<category android:name="fyt.cordova.app" />
</intent-filter>
</receiver>
</application>
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="26" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-feature android:name="android.hardware.location.gps" />
<uses-permission android:name="com.amazon.device.messaging.permission.RECEIVE" />
<permission android:name="fyt.cordova.app.permission.RECEIVE_ADM_MESSAGE" android:protectionLevel="signature" />
<uses-permission android:name="fyt.cordova.app.permission.RECEIVE_ADM_MESSAGE" />
</manifest>
答案 0 :(得分:0)
由于您的错误正确且清楚地表明您的清单引用了一些您已删除的文件,但清单中的条目仍然存在。
JAR_SIG_MISSING_ZIP_ENTRY_REFERENCED_IN_MANIFEST
JAR清单引用了APK中不存在的条目。
关注似乎是一个图标文件,其引用仍然存在于您的清单中。
资产/ www / images / appicon /图标
您可以使用ApkVerifier之类的工具进行测试,然后再上传到Play商店。 另外,here是所有此类错误的列表
答案 1 :(得分:0)
好的,我发现了问题所在。
这是指向android文件夹本身的图标文件外部的链接,咕process声无法从中提取。我手动添加了文件,结果成功了。
感谢您的所有输入。