build(hooks): add custom urls to android manifest

This commit is contained in:
Jason Dreyzehner 2016-10-06 00:20:42 -04:00
parent d5e6b8fab8
commit 2c264dfffa
1 changed files with 27 additions and 0 deletions

View File

@ -0,0 +1,27 @@
'use strict';
var AndroidManifest = require('androidmanifest');
var FILEPATH = 'platforms/android/AndroidManifest.xml';
var manifest = new AndroidManifest().readFile(FILEPATH);
var mainActivity = manifest.activity('MainActivity');
var customUrls = ['copay', 'bitcoin', 'bitauth'];
customUrls.forEach(function(url){
var selector = 'intent-filter > data[android\\:scheme=' + url + ']';
if(mainActivity.find(selector).length > 0){
return;
}
var intentFilter = manifest.$('<intent-filter>');
intentFilter.append('<data android:scheme="' + url + '" />');
intentFilter.append('<action android:name="android.intent.action.VIEW" />');
intentFilter.append('<category android:name="android.intent.category.DEFAULT" />');
intentFilter.append('<category android:name="android.intent.category.BROWSABLE" />');
mainActivity.append(intentFilter);
});
manifest.writeFile(FILEPATH);
console.log('custome uri schemes written to AndroidManifest');