Skip to content

Commit a75c81c

Browse files
committed
fix(core.runtime): 支持Application.getProcessName()方法
fix #606
1 parent 159ab13 commit a75c81c

File tree

3 files changed

+27
-0
lines changed
  • projects
    • sdk/core/runtime/src/main/java/com/tencent/shadow/core/runtime
    • test
      • dynamic/host/test-dynamic-host/src/androidTest/java/com/tencent/shadow/test/cases/plugin_main
      • plugin/general-cases/general-cases-lib/src/main/java/com/tencent/shadow/test/plugin/general_cases/lib/usecases/application

3 files changed

+27
-0
lines changed

projects/sdk/core/runtime/src/main/java/com/tencent/shadow/core/runtime/ShadowApplication.java

+6
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818

1919
package com.tencent.shadow.core.runtime;
2020

21+
import android.annotation.SuppressLint;
2122
import android.annotation.TargetApi;
2223
import android.app.Application;
2324
import android.content.BroadcastReceiver;
@@ -158,4 +159,9 @@ public void attachBaseContext(Context base) {
158159
public void setAppComponentFactory(ShadowAppComponentFactory factory) {
159160
mAppComponentFactory = factory;
160161
}
162+
163+
@SuppressLint("NewApi")
164+
public static String getProcessName() {
165+
return Application.getProcessName();
166+
}
161167
}

projects/test/dynamic/host/test-dynamic-host/src/androidTest/java/com/tencent/shadow/test/cases/plugin_main/ApplicationTest.java

+8
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,13 @@
1919
package com.tencent.shadow.test.cases.plugin_main;
2020

2121
import android.content.Intent;
22+
import android.os.Build;
2223

2324
import androidx.test.core.app.ApplicationProvider;
2425
import androidx.test.ext.junit.runners.AndroidJUnit4;
2526
import androidx.test.filters.LargeTest;
2627

28+
import org.junit.Assume;
2729
import org.junit.Test;
2830
import org.junit.runner.RunWith;
2931

@@ -48,4 +50,10 @@ public void testApplication() {
4850
matchTextWithViewTag("TAG_IS_ON_CREATE", Boolean.toString(true));
4951
}
5052

53+
@Test
54+
public void testApplicationGetProcessName() {
55+
Assume.assumeTrue(Build.VERSION.SDK_INT >= Build.VERSION_CODES.P);
56+
matchTextWithViewTag("Application.getProcessName()",
57+
ApplicationProvider.getApplicationContext().getPackageName());
58+
}
5159
}

projects/test/plugin/general-cases/general-cases-lib/src/main/java/com/tencent/shadow/test/plugin/general_cases/lib/usecases/application/TestApplicationActivity.java

+13
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
package com.tencent.shadow.test.plugin.general_cases.lib.usecases.application;
2020

2121
import android.app.Activity;
22+
import android.app.Application;
23+
import android.os.Build;
2224
import android.os.Bundle;
2325
import android.support.annotation.Nullable;
2426
import android.view.ViewGroup;
@@ -43,5 +45,16 @@ protected void onCreate(@Nullable Bundle savedInstanceState) {
4345
Boolean.toString(TestApplication.getInstance().isOnCreate)
4446
)
4547
);
48+
49+
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
50+
mItemViewGroup.addView(
51+
UiUtil.makeItem(
52+
this,
53+
"Application.getProcessName()",
54+
"Application.getProcessName()",
55+
Application.getProcessName()
56+
)
57+
);
58+
}
4659
}
4760
}

0 commit comments

Comments
 (0)