1
- # App相关
2
- ### 安装指定路径下的Apk
1
+ # App相关
2
+ ### 安装指定路径下的Apk
3
3
``` java
4
4
/**
5
- * 安装指定路径下的Apk
5
+ * 安装指定路径下的Apk
6
6
*/
7
7
public void installApk(String filePath) {
8
8
Intent intent = new Intent ();
@@ -13,10 +13,10 @@ public void installApk(String filePath) {
13
13
}
14
14
```
15
15
16
- ### 卸载指定包名的App
16
+ ### 卸载指定包名的App
17
17
``` java
18
18
/**
19
- * 卸载指定包名的App
19
+ * 卸载指定包名的App
20
20
*/
21
21
public void uninstallApp(String packageName) {
22
22
Intent intent = new Intent ();
@@ -27,10 +27,10 @@ public void uninstallApp(String packageName) {
27
27
}
28
28
```
29
29
30
- ### 获取App名称
30
+ ### 获取App名称
31
31
```
32
32
/**
33
- * 获取App名称
33
+ * 获取App名称
34
34
*/
35
35
public static String getAppName(Context context) {
36
36
try {
@@ -47,10 +47,10 @@ public static String getAppName(Context context) {
47
47
```
48
48
49
49
50
- ### 获取当前App版本号
50
+ ### 获取当前App版本号
51
51
``` java
52
52
/**
53
- * 获取当前App版本号
53
+ * 获取当前App版本号
54
54
*/
55
55
public static String getVersonName(Context context) {
56
56
String versionName = null ;
@@ -68,10 +68,10 @@ public static String getVersonName(Context context) {
68
68
}
69
69
```
70
70
71
- ### 打开指定包名的App
71
+ ### 打开指定包名的App
72
72
```
73
73
/**
74
- * 打开指定包名的App
74
+ * 打开指定包名的App
75
75
*/
76
76
public void openOtherApp(String packageName){
77
77
PackageManager manager = getPackageManager();
@@ -82,10 +82,10 @@ public void openOtherApp(String packageName){
82
82
}
83
83
```
84
84
85
- ### 打开指定包名的App应用信息界面
85
+ ### 打开指定包名的App应用信息界面
86
86
``` java
87
87
/**
88
- * 打开指定包名的App应用信息界面
88
+ * 打开指定包名的App应用信息界面
89
89
*/
90
90
public void showAppInfo(String packageName) {
91
91
Intent intent = new Intent ();
@@ -95,10 +95,10 @@ public void showAppInfo(String packageName) {
95
95
}
96
96
```
97
97
98
- ### 分享Apk信息
98
+ ### 分享Apk信息
99
99
``` java
100
100
/**
101
- * 分享Apk信息
101
+ * 分享Apk信息
102
102
*/
103
103
public void shareApkInfo(String info) {
104
104
Intent intent = new Intent ();
@@ -110,73 +110,73 @@ public void shareApkInfo(String info) {
110
110
}
111
111
```
112
112
113
- ### 获取App信息的一个封装类(包名、版本号、应用信息、图标、名称等)
113
+ ### 获取App信息的一个封装类(包名、版本号、应用信息、图标、名称等)
114
114
``` java
115
115
/**
116
- * 获取App信息的一个封装类(包名、版本号、应用信息、图标、名称等)
116
+ * 获取App信息的一个封装类(包名、版本号、应用信息、图标、名称等)
117
117
*/
118
118
public class AppEnging {
119
119
public static List<AppInfo > getAppInfos (Context context ) {
120
120
List<AppInfo > list = new ArrayList<AppInfo > ();
121
- // 获取应用程序信息
122
- // 包的管理者
121
+ // 获取应用程序信息
122
+ // 包的管理者
123
123
PackageManager pm = context. getPackageManager();
124
- // 获取系统中安装到所有软件信息
124
+ // 获取系统中安装到所有软件信息
125
125
List<PackageInfo > installedPackages = pm. getInstalledPackages(0 );
126
126
for (PackageInfo packageInfo : installedPackages) {
127
- // 获取包名
127
+ // 获取包名
128
128
String packageName = packageInfo. packageName;
129
- // 获取版本号
129
+ // 获取版本号
130
130
String versionName = packageInfo. versionName;
131
- // 获取application
131
+ // 获取application
132
132
ApplicationInfo applicationInfo = packageInfo. applicationInfo;
133
133
int uid = applicationInfo. uid;
134
- // 获取应用程序的图标
134
+ // 获取应用程序的图标
135
135
Drawable icon = applicationInfo. loadIcon(pm);
136
- // 获取应用程序的名称
136
+ // 获取应用程序的名称
137
137
String name = applicationInfo. loadLabel(pm). toString();
138
- // 是否是用户程序
139
- // 获取应用程序中相关信息,是否是系统程序和是否安装到SD卡
138
+ // 是否是用户程序
139
+ // 获取应用程序中相关信息,是否是系统程序和是否安装到SD卡
140
140
boolean isUser;
141
141
int flags = applicationInfo. flags;
142
142
if ((applicationInfo. FLAG_SYSTEM & flags) == applicationInfo. FLAG_SYSTEM ) {
143
- // 系统程序
143
+ // 系统程序
144
144
isUser = false ;
145
145
} else {
146
- // 用户程序
146
+ // 用户程序
147
147
isUser = true ;
148
148
}
149
- // 是否安装到SD卡
149
+ // 是否安装到SD卡
150
150
boolean isSD;
151
151
if ((applicationInfo. FLAG_EXTERNAL_STORAGE & flags) == applicationInfo. FLAG_EXTERNAL_STORAGE ) {
152
- // 安装到了SD卡
152
+ // 安装到了SD卡
153
153
isSD = true ;
154
154
} else {
155
- // 安装到手机中
155
+ // 安装到手机中
156
156
isSD = false ;
157
157
}
158
- // 添加到bean中
158
+ // 添加到bean中
159
159
AppInfo appInfo = new AppInfo (name, icon, packageName, versionName, isSD, isUser);
160
- // 将bean存放到list集合
160
+ // 将bean存放到list集合
161
161
list. add(appInfo);
162
162
}
163
163
return list;
164
164
}
165
165
}
166
166
167
- // 封装软件信息的bean类
167
+ // 封装软件信息的bean类
168
168
class AppInfo {
169
- // 名称
169
+ // 名称
170
170
private String name;
171
- // 图标
171
+ // 图标
172
172
private Drawable icon;
173
- // 包名
173
+ // 包名
174
174
private String packagName;
175
- // 版本号
175
+ // 版本号
176
176
private String versionName;
177
- // 是否安装到SD卡
177
+ // 是否安装到SD卡
178
178
private boolean isSD;
179
- // 是否是用户程序
179
+ // 是否是用户程序
180
180
private boolean isUser;
181
181
182
182
public AppInfo () {
@@ -196,12 +196,12 @@ class AppInfo {
196
196
}
197
197
```
198
198
199
- ### 判断当前App处于前台还是后台
199
+ ### 判断当前App处于前台还是后台
200
200
``` java
201
- // 需添加<uses-permission android:name="android.permission.GET_TASKS"/>
202
- // 并且必须是系统应用该方法才有效
201
+ // 需添加<uses-permission android:name="android.permission.GET_TASKS"/>
202
+ // 并且必须是系统应用该方法才有效
203
203
/**
204
- * 判断当前App处于前台还是后台
204
+ * 判断当前App处于前台还是后台
205
205
*/
206
206
public static boolean isApplicationBackground(final Context context) {
207
207
ActivityManager am = (ActivityManager ) context. getSystemService(Context . ACTIVITY_SERVICE );
0 commit comments