summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorTodd Kennedy <toddke@google.com>2017-04-07 11:38:39 -0700
committerTodd Kennedy <toddke@google.com>2017-04-07 12:48:13 -0700
commit66b5c042c252d954d023ced64bf63484bd905f03 (patch)
treed08fcd9721336294e24009cde30ab383b943bd96 /core/java/android
parent13acf25cfdc0397e16473ae110a980e045da3962 (diff)
copy 'visbileToInstantApps' setting
Change-Id: I342a133ae8d7f38008cb03706d160e6f2e2cca97 Fixes: 37002720 Test: Start instant app [adb shell am start -a android.intent.action.VIEW -c android.intent.category.BROWSABLE -d http://www.realestate.com.au/property-apartment-nsw-pyrmont-124879602] and see that hitting the 'share' icon works
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/content/IntentFilter.java13
-rw-r--r--core/java/android/content/pm/PackageParser.java18
2 files changed, 17 insertions, 14 deletions
diff --git a/core/java/android/content/IntentFilter.java b/core/java/android/content/IntentFilter.java
index 93204d1264eb..23e54baab622 100644
--- a/core/java/android/content/IntentFilter.java
+++ b/core/java/android/content/IntentFilter.java
@@ -284,8 +284,8 @@ public class IntentFilter implements Parcelable {
private int mVerifyState;
- /** Whether or not the intent filter is visible to ephemeral apps. */
- private boolean mVisibleToEphemeral;
+ /** Whether or not the intent filter is visible to instant apps. */
+ private boolean mVisibleToInstantApp;
// These functions are the start of more optimized code for managing
// the string sets... not yet implemented.
@@ -452,6 +452,7 @@ public class IntentFilter implements Parcelable {
}
mHasPartialTypes = o.mHasPartialTypes;
mVerifyState = o.mVerifyState;
+ mVisibleToInstantApp = o.mVisibleToInstantApp;
}
/**
@@ -654,12 +655,12 @@ public class IntentFilter implements Parcelable {
}
/** @hide */
- public void setVisibleToEphemeral(boolean visibleToEmphemeral) {
- mVisibleToEphemeral = visibleToEmphemeral;
+ public void setVisibleToInstantApp(boolean visibleToInstantApp) {
+ mVisibleToInstantApp = visibleToInstantApp;
}
/** @hide */
public boolean isVisibleToInstantApp() {
- return mVisibleToEphemeral;
+ return mVisibleToInstantApp;
}
/**
@@ -1858,6 +1859,7 @@ public class IntentFilter implements Parcelable {
dest.writeInt(mPriority);
dest.writeInt(mHasPartialTypes ? 1 : 0);
dest.writeInt(getAutoVerify() ? 1 : 0);
+ dest.writeInt(isVisibleToInstantApp() ? 1 : 0);
}
/**
@@ -1926,6 +1928,7 @@ public class IntentFilter implements Parcelable {
mPriority = source.readInt();
mHasPartialTypes = source.readInt() > 0;
setAutoVerify(source.readInt() > 0);
+ setVisibleToInstantApp(source.readInt() > 0);
}
private final boolean findMimeType(String type) {
diff --git a/core/java/android/content/pm/PackageParser.java b/core/java/android/content/pm/PackageParser.java
index 940447ca5f08..d44d0dcf00f2 100644
--- a/core/java/android/content/pm/PackageParser.java
+++ b/core/java/android/content/pm/PackageParser.java
@@ -4258,7 +4258,7 @@ public class PackageParser {
a.intents.add(intent);
}
// adjust activity flags when we implicitly expose it via a browsable filter
- intent.setVisibleToEphemeral(visibleToEphemeral || isWebBrowsableIntent(intent));
+ intent.setVisibleToInstantApp(visibleToEphemeral || isWebBrowsableIntent(intent));
if (intent.isVisibleToInstantApp()) {
a.info.flags |= ActivityInfo.FLAG_VISIBLE_TO_EPHEMERAL;
}
@@ -4291,7 +4291,7 @@ public class PackageParser {
owner.preferredActivityFilters.add(intent);
}
// adjust activity flags when we implicitly expose it via a browsable filter
- intent.setVisibleToEphemeral(visibleToEphemeral || isWebBrowsableIntent(intent));
+ intent.setVisibleToInstantApp(visibleToEphemeral || isWebBrowsableIntent(intent));
if (intent.isVisibleToInstantApp()) {
a.info.flags |= ActivityInfo.FLAG_VISIBLE_TO_EPHEMERAL;
}
@@ -4307,12 +4307,12 @@ public class PackageParser {
owner.visibleToInstantApps = true;
// cycle through any filters already seen
for (int i = a.intents.size() - 1; i >= 0; --i) {
- a.intents.get(i).setVisibleToEphemeral(true /*visibleToEmphemeral*/);
+ a.intents.get(i).setVisibleToInstantApp(true /*visibleToInstantApp*/);
}
if (owner.preferredActivityFilters != null) {
for (int i = owner.preferredActivityFilters.size() - 1; i >= 0; --i) {
owner.preferredActivityFilters.get(i)
- .setVisibleToEphemeral(true /*visibleToEmphemeral*/);
+ .setVisibleToInstantApp(true /*visibleToInstantApp*/);
}
}
}
@@ -4618,7 +4618,7 @@ public class PackageParser {
+ mArchiveSourcePath + " "
+ parser.getPositionDescription());
} else {
- intent.setVisibleToEphemeral(
+ intent.setVisibleToInstantApp(
visibleToEphemeral || isWebBrowsableIntent(intent));
a.intents.add(intent);
}
@@ -4821,7 +4821,7 @@ public class PackageParser {
}
outInfo.intents.add(intent);
// adjust provider flags when we implicitly expose it via a browsable filter
- intent.setVisibleToEphemeral(visibleToEphemeral || isWebBrowsableIntent(intent));
+ intent.setVisibleToInstantApp(visibleToEphemeral || isWebBrowsableIntent(intent));
if (intent.isVisibleToInstantApp()) {
outInfo.info.flags |= ProviderInfo.FLAG_VISIBLE_TO_EPHEMERAL;
}
@@ -4838,7 +4838,7 @@ public class PackageParser {
owner.visibleToInstantApps = true;
// cycle through any filters already seen
for (int i = outInfo.intents.size() - 1; i >= 0; --i) {
- outInfo.intents.get(i).setVisibleToEphemeral(true /*visibleToEmphemeral*/);
+ outInfo.intents.get(i).setVisibleToInstantApp(true /*visibleToInstantApp*/);
}
}
@@ -5126,7 +5126,7 @@ public class PackageParser {
return null;
}
// adjust activity flags when we implicitly expose it via a browsable filter
- intent.setVisibleToEphemeral(visibleToEphemeral || isWebBrowsableIntent(intent));
+ intent.setVisibleToInstantApp(visibleToEphemeral || isWebBrowsableIntent(intent));
if (intent.isVisibleToInstantApp()) {
s.info.flags |= ServiceInfo.FLAG_VISIBLE_TO_EPHEMERAL;
}
@@ -5143,7 +5143,7 @@ public class PackageParser {
owner.visibleToInstantApps = true;
// cycle through any filters already seen
for (int i = s.intents.size() - 1; i >= 0; --i) {
- s.intents.get(i).setVisibleToEphemeral(true /*visibleToEmphemeral*/);
+ s.intents.get(i).setVisibleToInstantApp(true /*visibleToInstantApp*/);
}
}
} else {