Skip to content

Commit 5f0d00f

Browse files
authored
Merge pull request #303 from BranchMetrics/feat-multiple-link-domains
Feat multiple link domains
2 parents 99fc717 + 25b5d72 commit 5f0d00f

File tree

12 files changed

+3044
-38
lines changed

12 files changed

+3044
-38
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ node_modules
1010
cordova-ionic-phonegap-branch-deep-linking.iml
1111
local.properties
1212
out/
13-
src/cordova-ionic-phonegap-branch-deep-linking.iml
1413
npm-debug.log*
1514
*.map
1615
yarn.lock

.npmignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,5 @@ testbed/
55
plugin.template.xml
66
gulpfile.js
77
CONTRIBUTING.md
8-
travis_after_all.py
8+
travis_after_all.py
9+
yarn.lock

CONTRIBUTING.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,7 @@
4545
```sh
4646
git clone [email protected]:BranchMetrics/cordova-ionic-phonegap-branch-deep-linking.git;
4747
cd cordova-ionic-phonegap-branch-deep-linking;
48-
rm -rf node_modules;
49-
yarn install --save-dev;
48+
yarn install
5049
```
5150

5251
## Develop

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -587,7 +587,9 @@
587587
<branch-config>
588588
<branch-key value="key_live_ndqptlgXNE4LHqIahH1WIpbiyFlb62J3" />
589589
<uri-scheme value="branchcordova" />
590-
<link-domain value="cordova.app.link" />
590+
<link-domain value="yourcustomdomain.com" />
591+
<link-domain value="cordova.app.link" /> <!-- optional previous link domain -->
592+
<link-domain value="bnc.lt" /> <!-- optional previous link domain -->
591593
<ios-team-release value="PW4Q8885U7" />
592594
<ios-team-debug value="FG35JLLMXX" /> <!-- optional -->
593595
<android-prefix value="/WSuf" /> <!-- optional (for bnc.lt) -->

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "branch-cordova-sdk",
33
"description": "Branch Metrics Cordova SDK",
44
"main": "www/branch.js",
5-
"version": "2.5.10",
5+
"version": "2.5.11",
66
"homepage": "https://github.com/BranchMetrics/cordova-ionic-phonegap-branch-deep-linking",
77
"repository": {
88
"type": "git",
@@ -60,4 +60,4 @@
6060
"validate-commit-msg": "^2.11.2",
6161
"xml2js": "^0.4.17"
6262
}
63-
}
63+
}

plugin.template.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ SOFTWARE.
2424
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
2525
xmlns:android="http://schemas.android.com/apk/res/android"
2626
id="branch-cordova-sdk"
27-
version="2.5.10">
27+
version="2.5.11">
2828

2929
<!-- DO NOT EDIT THIS FILE. MAKE ALL CHANGES TO plugin.template.xml INSTEAD -->
3030

plugin.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ SOFTWARE.
2424
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
2525
xmlns:android="http://schemas.android.com/apk/res/android"
2626
id="branch-cordova-sdk"
27-
version="2.5.10">
27+
version="2.5.11">
2828

2929
<!-- DO NOT EDIT THIS FILE. MAKE ALL CHANGES TO plugin.template.xml INSTEAD -->
3030

src/scripts/android/updateAndroidManifest.js

Lines changed: 22 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -182,25 +182,29 @@
182182
// determine the Branch link domain <data> to append to the App Link intent filter
183183
function getAppLinkIntentFilterData (preferences) {
184184
var intentFilterData = []
185-
186-
if (preferences.linkDomain.indexOf('app.link') !== -1) {
187-
// app.link needs an additional -alternate link domain
188-
var first = preferences.linkDomain.split('.')[0]
189-
var rest = preferences.linkDomain.split('.').slice(2).join('.')
190-
var alternate = first + '-alternate' + '.' + rest
191-
192-
intentFilterData.push(getAppLinkIntentFilterDictionary(preferences.linkDomain))
193-
intentFilterData.push(getAppLinkIntentFilterDictionary(alternate))
194-
} else if (preferences.linkDomain.indexOf('bnc.lt') !== -1) {
195-
// bnc.lt
196-
if (preferences.androidPrefix == null) {
197-
throw new Error('BRANCH SDK: Missing "android-prefix" in <branch-config> in your config.xml. Docs https://goo.gl/GijGKP')
185+
var linkDomains = preferences.linkDomain
186+
187+
for (var i = 0; i < linkDomains.length; i++) {
188+
var linkDomain = linkDomains[i]
189+
190+
// app.link link domains need -alternate associated domains as well (for Deep Views)
191+
if (linkDomain.indexOf('app.link') !== -1) {
192+
var first = linkDomain.split('.')[0]
193+
var rest = linkDomain.split('.').slice(2).join('.')
194+
var alternate = first + '-alternate' + '.' + rest
195+
196+
intentFilterData.push(getAppLinkIntentFilterDictionary(linkDomain))
197+
intentFilterData.push(getAppLinkIntentFilterDictionary(alternate))
198+
} else if (linkDomain.indexOf('bnc.lt') !== -1) {
199+
// bnc.lt
200+
if (preferences.androidPrefix == null) {
201+
throw new Error('BRANCH SDK: Missing "android-prefix" in <branch-config> in your config.xml. Docs https://goo.gl/GijGKP')
202+
}
203+
intentFilterData.push(getAppLinkIntentFilterDictionary(linkDomain, preferences.androidPrefix))
204+
} else {
205+
// custom
206+
intentFilterData.push(getAppLinkIntentFilterDictionary(linkDomain))
198207
}
199-
200-
intentFilterData.push(getAppLinkIntentFilterDictionary(preferences.linkDomain, preferences.androidPrefix))
201-
} else {
202-
// custom
203-
intentFilterData.push(getAppLinkIntentFilterDictionary(preferences.linkDomain))
204208
}
205209

206210
return intentFilterData

src/scripts/ios/updateAssociatedDomains.js

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -99,18 +99,23 @@
9999
function updateAssociatedDomains (preferences) {
100100
var domainList = []
101101
var prefix = 'applinks:'
102+
var linkDomains = preferences.linkDomain
102103

103-
// add link domain to associated domain
104-
domainList.push(prefix + preferences.linkDomain)
104+
for (var i = 0; i < linkDomains.length; i++) {
105+
var linkDomain = linkDomains[i]
105106

106-
// app.link link domains need -alternate associated domains as well (for Deep Views)
107-
if (preferences.linkDomain.indexOf('app.link') !== -1) {
108-
var first = preferences.linkDomain.split('.')[0]
109-
var second = preferences.linkDomain.split('.')[1]
110-
var rest = preferences.linkDomain.split('.').slice(2).join('.')
111-
var alternate = first + '-alternate'
107+
// add link domain to associated domain
108+
domainList.push(prefix + linkDomain)
112109

113-
domainList.push(prefix + alternate + '.' + second + '.' + rest)
110+
// app.link link domains need -alternate associated domains as well (for Deep Views)
111+
if (linkDomain.indexOf('app.link') !== -1) {
112+
var first = linkDomain.split('.')[0]
113+
var second = linkDomain.split('.')[1]
114+
var rest = linkDomain.split('.').slice(2).join('.')
115+
var alternate = first + '-alternate'
116+
117+
domainList.push(prefix + alternate + '.' + second + '.' + rest)
118+
}
114119
}
115120

116121
return domainList

src/scripts/ios/updatePlist.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@
8484

8585
// override
8686
obj.branch_key = preferences.branchKey
87-
obj.branch_app_domain = preferences.linkDomain
87+
obj.branch_app_domain = preferences.linkDomain[0]
8888

8989
return obj
9090
}

0 commit comments

Comments
 (0)