Search code examples
androidcordovapackagerename

Change Cordova project android package name


Does any of you know how to change the package name of an android project build with cordova?

I've tried to change the android project name by doing:

  1. Removing the android platform from the project by executing cordova platform remove android

  2. I changed the <widget id> in config.xml:

From

<widget id="com.oldName.oldName" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">

to

<widget id="com.newName.newName" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
  1. Reinstall android platform by doing cordova platform add android

 

Problem is that after I did it, I got an error when executing cordova run android:

(node:xxxxx) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Cannot read property 'manifest' of undefined

The only way to get rid of this error is to revert back to its original package name (and of course to re-install android platform)

I tried to google a lot but I just can't seem to find any solution that works for me. Will any of you be kind enough to enlighten me on this?


Solution

  • You can use android-packageName inside the widget tag

    <widget id="com.oldName.oldName" android-packageName="com.newName.newName" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">