Merge change 4785 into donut
* changes: Fix issue #1753079: running instrumentation in shared processes.
This commit is contained in:
@@ -2088,6 +2088,10 @@ public final class ActivityThread {
|
||||
return mInitialApplication;
|
||||
}
|
||||
|
||||
public String getProcessName() {
|
||||
return mBoundApplication.processName;
|
||||
}
|
||||
|
||||
public ApplicationContext getSystemContext() {
|
||||
synchronized (this) {
|
||||
if (mSystemContext == null) {
|
||||
|
||||
@@ -446,13 +446,13 @@ public class Instrumentation {
|
||||
if (ai == null) {
|
||||
throw new RuntimeException("Unable to resolve activity for: " + intent);
|
||||
}
|
||||
if (!ai.applicationInfo.processName.equals(
|
||||
getTargetContext().getPackageName())) {
|
||||
String myProc = mThread.getProcessName();
|
||||
if (!ai.processName.equals(myProc)) {
|
||||
// todo: if this intent is ambiguous, look here to see if
|
||||
// there is a single match that is in our package.
|
||||
throw new RuntimeException("Intent resolved to different package "
|
||||
+ ai.applicationInfo.packageName + ": "
|
||||
+ intent);
|
||||
throw new RuntimeException("Intent in process "
|
||||
+ myProc + " resolved to different process "
|
||||
+ ai.processName + ": " + intent);
|
||||
}
|
||||
|
||||
intent.setComponent(new ComponentName(
|
||||
|
||||
Reference in New Issue
Block a user