在开发Android应用程序时,我们可以在
AndroidManifest.xml
中设置其
debug
属性,比如示例1
示例1
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61<applicationandroid:icon = "@drawable/ic_launcher"android:label = "@string/app_name"android:theme = "@style/AppTheme"android:debuggable = "true" >
只有android:debuggable="true"时我们才可以在手机上调试Android程序。
但是当我们没在
AndroidManifest.xml中设置其debug属性时:
使用Eclipse运行这种方式打包时其
debug属性为
true
,
使用Eclipse导出这种方式打包时其
debug属性为法false.
在使用ant打包时,其值就取决于ant的打包参数是release还是debug.
因此在
AndroidMainifest.xml
中最好
不
设置
android:debuggable
属性置,而是由打包方式来决定其值。。
当然对于测试人员还是应该检查该属性的,比如
使用aapt工具:
aapt list -v -a myfile.apk
这个命令将会打印和apk相关的所有详细信息,找到“android:debuggable",它的值分为:
0x0: debuggable false
0xffffffff: debugabble true
例如,在我的测试中,这一行的信息是:
A: android ebuggable(0x0101000f)=(type 0x12)0x0
这说明我的Release Build已经关闭了debuggable!
另外,还有一种测试方法:
使用android cts测试,http://source.android.com/compatibility/cts-intro.html
这是一种单元测试的方法,具体用到的类是android.permission.cts.DebuggableTest。
testNoDebuggable:如果是true,说明debuggable false;
testNoDebuggable:如果是false,说明debuggable true。
当然,我们也可以在Android应用程序中来判断当前应用是否处于debug状态来做一些操作,如
示例2。
示例2
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157public static boolean isApkDebugable ( Context context ) {try {ApplicationInfo info = context . getApplicationInfo ();return ( info . flags & ApplicationInfo . FLAG_DEBUGGABLE )!= 0 ;} catch ( Exception e ) {}return false ;}
另外,我们也可以在Android应用程序中来判断当前其他应用程序是否处于debug状态,如
示例3。
示例3
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243public static boolean isApkDebugable ( Context context , String packageName ) {try {PackageInfo pkginfo = context . getPackageManager (). getPackageInfo (packageName , 1 );if ( pkginfo != null ) {ApplicationInfo info = pkginfo . applicationInfo ;return ( info . flags & ApplicationInfo . FLAG_DEBUGGABLE )!= 0 ;}} catch ( Exception e ) {}return false ;}
结束!
http://blog.csdn.net/hudashi/article/details/8698142
最后
以上就是雪白鲜花最近收集整理的关于Android应用程序的debug属性的全部内容,更多相关Android应用程序内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复