mirror of
https://github.com/apache/cordova-android.git
synced 2025-02-22 00:32:55 +08:00
CB-11244: Setup Api.js to support multiple builders based on project structure
This commit is contained in:
parent
bd4ddcdedd
commit
28ebbb8f02
7
bin/templates/cordova/Api.js
vendored
7
bin/templates/cordova/Api.js
vendored
@ -58,6 +58,7 @@ function setupEvents(externalEventEmitter) {
|
|||||||
function Api(platform, platformRootDir, events) {
|
function Api(platform, platformRootDir, events) {
|
||||||
this.platform = PLATFORM;
|
this.platform = PLATFORM;
|
||||||
this.root = path.resolve(__dirname, '..');
|
this.root = path.resolve(__dirname, '..');
|
||||||
|
this.builder = "gradle";
|
||||||
|
|
||||||
setupEvents(events);
|
setupEvents(events);
|
||||||
|
|
||||||
@ -81,6 +82,7 @@ function Api(platform, platformRootDir, events) {
|
|||||||
// XXX Override some locations for Android Studio projects
|
// XXX Override some locations for Android Studio projects
|
||||||
if(AndroidStudio.isAndroidStudioProject(self.root) === true) {
|
if(AndroidStudio.isAndroidStudioProject(self.root) === true) {
|
||||||
selfEvents.emit('log', 'Android Studio project detected');
|
selfEvents.emit('log', 'Android Studio project detected');
|
||||||
|
this.builder="studio";
|
||||||
this.android_studio = true;
|
this.android_studio = true;
|
||||||
this.locations.configXml = path.join(self.root, 'app/src/main/res/xml/config.xml');
|
this.locations.configXml = path.join(self.root, 'app/src/main/res/xml/config.xml');
|
||||||
this.locations.strings = path.join(self.root, 'app/src/main/res/xml/strings.xml');
|
this.locations.strings = path.join(self.root, 'app/src/main/res/xml/strings.xml');
|
||||||
@ -257,7 +259,8 @@ Api.prototype.addPlugin = function (plugin, installOptions) {
|
|||||||
if (plugin.getFrameworks(this.platform).length === 0) return;
|
if (plugin.getFrameworks(this.platform).length === 0) return;
|
||||||
|
|
||||||
selfEvents.emit('verbose', 'Updating build files since android plugin contained <framework>');
|
selfEvents.emit('verbose', 'Updating build files since android plugin contained <framework>');
|
||||||
require('./lib/builders/builders').getBuilder('gradle').prepBuildFiles();
|
//This should pick the correct builder, not just get gradle
|
||||||
|
require('./lib/builders/builders').getBuilder(this.builder).prepBuildFiles();
|
||||||
}.bind(this))
|
}.bind(this))
|
||||||
// CB-11022 Return truthy value to prevent running prepare after
|
// CB-11022 Return truthy value to prevent running prepare after
|
||||||
.thenResolve(true);
|
.thenResolve(true);
|
||||||
@ -290,7 +293,7 @@ Api.prototype.removePlugin = function (plugin, uninstallOptions) {
|
|||||||
if (plugin.getFrameworks(this.platform).length === 0) return;
|
if (plugin.getFrameworks(this.platform).length === 0) return;
|
||||||
|
|
||||||
selfEvents.emit('verbose', 'Updating build files since android plugin contained <framework>');
|
selfEvents.emit('verbose', 'Updating build files since android plugin contained <framework>');
|
||||||
require('./lib/builders/builders').getBuilder('gradle').prepBuildFiles();
|
require('./lib/builders/builders').getBuilder(this.builder).prepBuildFiles();
|
||||||
}.bind(this))
|
}.bind(this))
|
||||||
// CB-11022 Return truthy value to prevent running prepare after
|
// CB-11022 Return truthy value to prevent running prepare after
|
||||||
.thenResolve(true);
|
.thenResolve(true);
|
||||||
|
Loading…
Reference in New Issue
Block a user