ThreadsMobileLib / edna-sdk-android

edna Android SDK libraries and demo project
12 stars 6 forks source link

Android S explicitly exported manifest components #10

Open anonlatte opened 3 years ago

anonlatte commented 3 years ago

Description

Android S requires that manifest components with intent-filters explicitly declare android:exported value for apps targeting S or above.

https://developer.android.com/about/versions/12/behavior-changes-12#exported

At least ThreadsPushFcmIntentService and PushFcmIntentService seems to have intent-filter and no explicit exported attribute value.

Steps to Reproduce

Project with im.threads:threads-debug:3.5.4 and com.mfms.android:push-lite-release:2.8.7 Change compileSdkVersion to '31' and targetSdkVerrsion to '31' Build the project Attempt to install to a device/emulator with Android S preview

Expected behavior:

App can be installed

Actual behavior:

Execution failed for task ':app:installDebug'.
> Installation did not succeed.
The application could not be installed: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED

List of apks:
[0] 'debug.apk'
Installation failed due to: 'Failed to commit install session 1887285923 with command cmd package install-commit 1887285923. Error: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED: Failed parse during installPackageLI: /data/app/vmdl1887285923.tmp/base.apk (at Binary XML file line #479): im.threads.push.ThreadsPushFcmIntentService: Targeting S+ (version 31 and above) requires that an explicit value for android:exported be defined when intent filters are present'
nikiJava commented 2 years ago

I get the same problem :(