I am trying to update my app on the Google Play Store. Google claims that my app uses:
android.premission.REQUEST_INSTALL_PACKAGES.
I have no knowledge of why this is associated with my app. Play Store says that if I don’t really need it, I should remove it from the manifest.
I have no idea how to do this: I use Voltbuilder directly from AppStudio.
Until this is fixed I can’t upload my app.
Any help is appreciated.
Thank you,
Warren
Are you using any plugins? It could be that’s where it’s coming from.
I am using plugins, they are not functionally related to the choices for: android.premission.REQUEST_INSTALL_PACKAGES.
If you are certain your plugins aren’t the issue, then you must be attempting to use an ACTION_INSTALL_PACKAGE intent in your own code, as documented here: Use of the REQUEST_INSTALL_PACKAGES permission - Play Console Help
We certainly do not embed this in your code as part of using VoltBuilder. Do you remember including this in the code you wrote? Is it possible one of the plugins you’re using has included this without your knowledge, or have you reviewed their code?
I’m happy to take a look at your app if you’d like. Feel free to send it to support@volt.build.
I did not embed any code to do this. I have NO ability to review the code associated with the plugins. The Playstore said it should be removed from the manifest. How would that be accomplished?
Thank you
The only way I can help you is by telling you which plugin is the culprit. To do that I will need a list of plugins you are using. Once the culprit is determined, you can find an alternate plugin, or use an earlier version that doesn’t attempt to install another package.
cordova-plugin-splashscreen
cordova-plugin-file
cordova-plugin-file-opener2
phonegap-plugin-barcodescanner-android12
cordova-sqlite-storage
cordova-plugin-statusbar
cordova-plugin-wkwebview-engine
The issue is cordova-plugin-file-opener2
. You can read about the requirement here: cordova-plugin-file-opener2 - npm
I suspect you have the addition to the manifest documented above in your config.xml
. Based on my read of Google’s AUP for the REQUEST_INSTALL_PACKAGES
I would guess you are in violation and probably need to substitute in a different plugin.
Note: cordova-plugin-wkwebview-engine
is deprecated for modern versions of cordova-ios - see GitHub - apache/cordova-plugin-wkwebview-engine: [DEPRECATED] Apache Cordova wkwebview engine plugin - you should probably remove it unless you are using a very old iOS engine.
Thank you, that is VERY HELPFUL.
I appreciate your help!!!
I appreciate your help...
This is my config.xml
<!-- Android Template ConfigXML - 5.5.0 Production-->
<!-- cordova-plugin-file -->
<!-- cordova-plugin-file-opener2 -->
<!-- phonegap-plugin-barcodescanner-android12 -->
<!-- cordova-sqlite-storage -->
<?xml version="1.0" encoding="UTF-8"?>
<widget
xmlns = "https://www.w3.org/ns/widgets"
id = "com.nsbasic.{id}"
android-versionCode = "{phoneGapBuildCounter}"
ios-CFBundleVersion = "{phoneGapBuildCounter}"
version = "{version}">
<name>{title}</name>
<description>{description}</description>
<!-- <engine name='android' spec='11.0.0' /> V5.5.0-->
<!-- V5.5.0 -->
<engine name="android" spec="12.0.1" />
<!-- V5.5.0 -->
<icon src='{icon}' />
<!-- V5.5.0 -->
<preference name="AndroidWindowSplashScreenAnimatedIcon" value="resources/splashTemplate.png" />
<preference name="AndroidWindowSplashScreenBackground" value="#000000" />
<!-- V5.5.0 -->
<preference name='SplashScreenDelay' value='2000' />
<preference name='AutoHideSplashScreen' value='true' />
<preference name='AndroidWindowSplashScreenAnimatedIcon' value='resources/splashTemplate.png' />
<preference name='AndroidWindowSplashScreenBackground' value='#000000' />
<plugin name='cordova-plugin-splashscreen' source='npm' />
<plugin name="cordova-plugin-file" source="npm" />
<plugin name="cordova-plugin-file-opener2" source="npm" />
<plugin name="phonegap-plugin-barcodescanner-android12" source="npm" />
<plugin name="cordova-sqlite-storage" source="npm" />
<preference name="permissions" value="none"/>
<!-- sample preference specifications -->
<!-- <preference name="autorotate" value="false" readonly="true"/> -->
<!-- <preference name="orientation" value="default" /> -->
<!-- <preference name="fullscreen" value="true" /> -->
<!-- Platforms: Customize as needed. -->
<platforms>
<platform name="android" />
<platform name="ios" />
</platforms>
<plugin name="cordova-plugin-statusbar" source="npm" />
<preference name="StatusBarOverlaysWebView" value="{phoneGapStatusBarOverlay}" />
<preference name="StatusBarBackgroundColor" value="{phoneGapStatusBarColor}" />
<preference name="StatusBarStyle" value="{phoneGapStatusBarStyle}" />
<allow-navigation href="*" />
<access origin="*" />
<allow-intent href="*" />
<plugin name="cordova-plugin-wkwebview-engine" source="npm" />
<platform name="ios">
<preference name="WKWebViewOnly" value="true" />
<feature name="CDVWKWebViewEngine">
<param name="ios-package" value="CDVWKWebViewEngine" />
</feature>
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
</platform>
<!-- V5.5.0 -->
<edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application/activity">
<application android:exported="true" />
</edit-config>
<!-- V5.5.0 -->
</widget>
You can attempt to add the following to your config.xml
, but I doubt your app will pass review:
<platform name="android">
<config-file parent="/manifest" target="AndroidManifest.xml" xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
</config-file>
</platform>
I would suggest finding a different plugin to substitute for cordova-plugin-file-opener2
.
Thank you. Do you have any recommendations for a different plugin?
I don’t personally, but it might be a good idea to ask here by starting a new topic. Other users may have ideas.