3

I want to upload my Flutter AppBunble to PlayStore but I got this message from PlayStore:

enter image description here

And Here are AndroidManifest.xml codes:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="co..."> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <application android:usesCleartextTraffic="true" android:icon="@mipmap/ic_launcher" android:label="... هروی"> <activity android:name=".MainActivity" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode" android:hardwareAccelerated="true" android:launchMode="singleTop" android:exported="true" android:theme="@style/LaunchTheme" android:windowSoftInputMode="adjustResize"> <!-- Specifies an Android theme to apply to this Activity as soon as the Android process has started. This theme is visible to the user while the Flutter UI initializes. After that, this theme continues to determine the Window background behind the Flutter UI. --> <meta-data android:name="io.flutter.embedding.android.NormalTheme" android:resource="@style/NormalTheme" /> <!-- Displays an Android View that continues showing the launch screen Drawable until Flutter paints its first frame, then this splash screen fades out. A splash screen is useful to avoid any visual gap between the end of Android's launch screen and the painting of Flutter's first frame. --> <meta-data android:name="io.flutter.embedding.android.SplashScreenDrawable" android:resource="@drawable/launch_background" /> <intent-filter> <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="http" android:host="akhlaqmarefat.com" /> </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="http" android:host="host" android:pathPrefix="/book" /> </intent-filter> </activity> <!-- Don't delete the meta-data below. This is used by the Flutter tool to generate GeneratedPluginRegistrant.java --> <meta-data android:name="flutterEmbedding" android:value="2" /> <uses-library android:name="org.apache.http.legacy" android:required="false" /> </application> </manifest> 

I run this command to generate AppBundle:

flutter build appbundle --obfuscate --split-debug-info=~/Projects/Lajward/LibraryApp 

My System Info:

Flutter 3.0.2

Dart 2.17.3

Ubuntu 22.04 LTS

And also I tried all of the answers in this post, but still the same issue.

Please help me with what is wrong exactly here. Thanks

3 Answers 3

2

Main Suggestion: You have to set your android:exported=true for the activity. For more details see here: https://developer.android.com/guide/topics/manifest/activity-element#exported

Suggestion 2: Also, if you are using packages which have native code and include an activity then you might also have to add android:exported flag there also.

Suggestion 3(Workaround): If possible you can change your target SDK version below the API level of Android12 to make it go away.

Edit: If you are using third party packages then you might try checking if all your other packages come with support of Android 12. Try running pub outdate to see the packages which can be upgraded or manually check all the packages which you have: To Check: Go to your FlutterSDK Path and go to .pub-cache/hosted/ and look at the build.gradle file for each of the package you are using cause many packages might be having target sdk below 12 which might be causing the issue. Also try updating those packages.

Also, try without obfuscation it might solve your problem.

Sign up to request clarification or add additional context in comments.

10 Comments

Did you read my code? Because I set android:exported="true" to MainActivity
Not in your activity but the third party packages that you have must also have any activity set the android:exported package. Also try using the edit.
I set it in all package
Try without obfuscation, because it sometimes causes problems.(Just to see if it works).
Still the same issue
|
0

Simply open your native app as below enter image description here

After opening that go through your android manifest file i seen that you have already added the exported="true" in mainactivity but after opening the manifest file see the error and suggestions in manifest

1 Comment

Thanks, but doesn't work for me
0

After unit testing, we found the problem was from this package epub_viewer: ^0.2.5, the AndroidManifest.xml of this package was empty:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.jideguru.epub_viewer"> </manifest> 

and also doesn't have any activity or service, but this solution work for me, by adding these lines of code to my AndroidManifest.xml file:

 <activity android:name = "com.folioreader.ui.activity.SearchActivity" android:exported = "true" tools:node="merge" /> 

the PlayStore accepted my AppBundle.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.