Offset 3, 25 lines modifiedOffset 3, 22 lines modified
  
3 import·android.app.AppOpsManager$AttributedOpEntry;3 import·android.app.AppOpsManager$AttributedOpEntry;
4 import·android.app.AppOpsManager$HistoricalOp;4 import·android.app.AppOpsManager$HistoricalOp;
5 import·java.util.Iterator;5 import·java.util.Iterator;
6 import·kotlin.Triple;6 import·kotlin.Triple;
7 import·java.util.List;7 import·java.util.List;
8 import·java.util.function.Function;8 import·java.util.function.Function;
9 import·java.util.HashMap; 
10 import·android.content.pm.Attribution; 
11 import·java.util.ArrayList;9 import·java.util.ArrayList;
12 import·java.util.HashSet;10 import·java.util.HashSet;
13 import·java.util.Set;11 import·java.util.Set;
14 import·java.util.Map; 
15 import·android.app.AppOpsManager$OpEntry;12 import·android.app.AppOpsManager$OpEntry;
16 import·android.app.AppOpsManager$PackageOps;13 import·android.app.AppOpsManager$PackageOps;
17 import·android.app.AppOpsManager$HistoricalPackageOps;14 import·android.app.AppOpsManager$HistoricalPackageOps;
  
18 public·class·AppPermissionUsage$GroupUsage·implements·AppPermissionUsage$TimelineUsage15 public·class·AppPermissionUsage$GroupUsage
19 {16 {
20 ····private·final·AppPermissionGroup·mGroup;17 ····private·final·AppPermissionGroup·mGroup;
21 ····private·final·AppOpsManager$HistoricalPackageOps·mHistoricalUsage;18 ····private·final·AppOpsManager$HistoricalPackageOps·mHistoricalUsage;
22 ····private·final·AppOpsManager$PackageOps·mLastUsage;19 ····private·final·AppOpsManager$PackageOps·mLastUsage;
23 ····20 ····
24 ····public·AppPermissionUsage$GroupUsage(final·AppPermissionGroup·mGroup,·final·AppOpsManager$PackageOps·mLastUsage,·final·AppOpsManager$HistoricalPackageOps·mHistoricalUsage)·{21 ····public·AppPermissionUsage$GroupUsage(final·AppPermissionGroup·mGroup,·final·AppOpsManager$PackageOps·mLastUsage,·final·AppOpsManager$HistoricalPackageOps·mHistoricalUsage)·{
25 ········this.mGroup·=·mGroup;22 ········this.mGroup·=·mGroup;
Offset 43, 23 lines modifiedOffset 40, 14 lines modified
43 ········}40 ········}
44 ········if·(appPermissionGroup.getName().equals("android.permission-group.CAMERA"))·{41 ········if·(appPermissionGroup.getName().equals("android.permission-group.CAMERA"))·{
45 ············set.add("android:phone_call_camera");42 ············set.add("android:phone_call_camera");
46 ········}43 ········}
47 ········return·set;44 ········return·set;
48 ····}45 ····}
49 ····46 ····
50 ····private·static·Map·getAttributionTagToLabelMap(final·Attribution[]·array)·{ 
51 ········final·HashMap<String,·Integer>·hashMap·=·new·HashMap<String,·Integer>(); 
52 ········for·(int·length·=·array.length,·i·=·0;·i·<·length;·++i)·{ 
53 ············final·Attribution·attribution·=·array[i]; 
54 ············hashMap.put(attribution.getTag(),·attribution.getLabel()); 
55 ········} 
56 ········return·hashMap; 
57 ····} 
58 ···· 
59 ····private·long·lastAccessAggregate(final·Function·function)·{47 ····private·long·lastAccessAggregate(final·Function·function)·{
60 ········final·Set·allOps·=·getAllOps(this.mGroup);48 ········final·Set·allOps·=·getAllOps(this.mGroup);
61 ········final·List·ops·=·this.mLastUsage.getOps();49 ········final·List·ops·=·this.mLastUsage.getOps();
62 ········final·int·size·=·ops.size();50 ········final·int·size·=·ops.size();
63 ········long·max·=·0L;51 ········long·max·=·0L;
64 ········for·(int·i·=·0;·i·<·size;·++i)·{52 ········for·(int·i·=·0;·i·<·size;·++i)·{
65 ············final·AppOpsManager$OpEntry·appOpsManager$OpEntry·=·(AppOpsManager$OpEntry)ops.get(i);53 ············final·AppOpsManager$OpEntry·appOpsManager$OpEntry·=·(AppOpsManager$OpEntry)ops.get(i);
Offset 86, 413 lines modifiedOffset 74, 14 lines modified
86 ················final·int·n·=·11;74 ················final·int·n·=·11;
87 ················list.add(new·Triple((Object)discreteAccess.getLastAccessTime(n),·(Object)discreteAccess.getLastDuration(n),·(Object)discreteAccess.getLastProxyInfo(n)));75 ················list.add(new·Triple((Object)discreteAccess.getLastAccessTime(n),·(Object)discreteAccess.getLastDuration(n),·(Object)discreteAccess.getLastProxyInfo(n)));
88 ············}76 ············}
89 ········}77 ········}
90 ········return·list;78 ········return·list;
91 ····}79 ····}
92 ····80 ····
93 ····public·List·getAttributionLabelledGroupUsages()·{ 
94 ········//· 
95 ········//·This·method·could·not·be·decompiled. 
96 ········//· 
97 ········//·Original·Bytecode: 
98 ········//· 
99 ········//·····1:·astore_1······· 
100 ········//·····2:·aload_0········ 
101 ········//·····3:·getfield········com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage.mHistoricalUsage:Landroid/app/AppOpsManager$HistoricalPackageOps; 
102 ········//·····6:·astore_2······· 
103 ········//·····7:·aload_2········ 
104 ········//·····8:·ifnull··········432 
105 ········//····11:·aload_2········ 
106 ········//····12:·invokevirtual···android/app/AppOpsManager$HistoricalPackageOps.getAttributedOpsCount:()I 
107 ········//····15:·istore_3······· 
108 ········//····16:·iload_3········ 
109 ········//····17:·ifne············23 
110 ········//····20:·goto············432 
111 ········//····23:·aload_0········ 
112 ········//····24:·invokevirtual···com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage.getGroup:()Lcom/android/permissioncontroller/permission/model/AppPermissionGroup; 
113 ········//····27:·invokevirtual···com/android/permissioncontroller/permission/model/AppPermissionGroup.getApp:()Landroid/content/pm/PackageInfo; 
114 ········//····30:·getfield········android/content/pm/PackageInfo.attributions:[Landroid/content/pm/Attribution; 
115 ········//····33:·invokestatic····com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage.getAttributionTagToLabelMap:([Landroid/content/pm/Attribution;)Ljava/util/Map; 
116 ········//····36:·astore_2······· 
117 ········//····37:·aload_0········ 
118 ········//····38:·getfield········com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage.mGroup:Lcom/android/permissioncontroller/permission/model/AppPermissionGroup; 
119 ········//····41:·invokestatic····com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage.getAllOps:(Lcom/android/permissioncontroller/permission/model/AppPermissionGroup;)Ljava/util/Set; 
120 ········//····44:·astore··········4 
121 ········//····46:·new·············Ljava/util/HashMap; 
122 ········//····49:·astore··········5 
123 ········//····51:·aload···········5 
124 ········//····53:·invokespecial···java/util/HashMap.<init>:()V 
125 ········//····56:·aconst_null···· 
126 ········//····57:·astore··········6 
127 ········//····59:·iconst_0······· 
128 ········//····60:·istore··········7 
129 ········//····62:·aload_1········ 
130 ········//····63:·getfield········com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage.mHistoricalUsage:Landroid/app/AppOpsManager$HistoricalPackageOps; 
131 ········//····66:·astore··········8 
132 ········//····68:·aload···········8 
133 ········//····70:·invokevirtual···android/app/AppOpsManager$HistoricalPackageOps.getAttributedOpsCount:()I 
134 ········//····73:·istore··········9 
135 ········//····75:·iload···········7 
136 ········//····77:·iload···········9 
137 ········//····79:·if_icmpge·······392 
138 ········//····82:·aload_1········ 
139 ········//····83:·getfield········com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage.mHistoricalUsage:Landroid/app/AppOpsManager$HistoricalPackageOps; 
140 ········//····86:·iload···········7 
141 ········//····88:·invokevirtual···android/app/AppOpsManager$HistoricalPackageOps.getAttributedOpsAt:(I)Landroid/app/AppOpsManager$AttributedHistoricalOps; 
142 ········//····91:·astore··········8 
143 ········//····93:·aload···········8 
144 ········//····95:·invokevirtual···android/app/AppOpsManager$AttributedHistoricalOps.getTag:()Ljava/lang/String; 
145 ········//····98:·astore··········10 
146 ········//···100:·aload···········4 
147 ········//···102:·invokeinterface·java/util/Set.iterator:()Ljava/util/Iterator; 
148 ········//···107:·astore··········11 
149 ········//···109:·aload···········11 
150 ········//···111:·invokeinterface·java/util/Iterator.hasNext:()Z 
151 ········//···116:·istore··········12 
152 ········//···118:·iload···········12 
153 ········//···120:·ifeq············378 
154 ········//···123:·aload···········11 
155 ········//···125:·invokeinterface·java/util/Iterator.next:()Ljava/lang/Object; 
156 ········//···130:·checkcast·······Ljava/lang/String; 
157 ········//···133:·astore··········13 
158 ········//···135:·aload···········8 
159 ········//···137:·aload···········13 
160 ········//···139:·invokevirtual···android/app/AppOpsManager$AttributedHistoricalOps.getOp:(Ljava/lang/String;)Landroid/app/AppOpsManager$HistoricalOp; 
161 ········//···142:·astore··········13 
162 ········//···144:·aload···········13 
163 ········//···146:·ifnonnull·······152 
164 ········//···149:·goto············109 
165 ········//···152:·aload···········13 
166 ········//···154:·invokevirtual···android/app/AppOpsManager$HistoricalOp.getDiscreteAccessCount:()I 
167 ········//···157:·istore··········14 
168 ········//···159:·iconst_0······· 
169 ········//···160:·istore··········15 
170 ········//···162:·iload···········15 
171 ········//···164:·iload···········14 
172 ········//···166:·if_icmpge·······373 
173 ········//···169:·aload···········13 
174 ········//···171:·iload···········15 
175 ········//···173:·invokevirtual···android/app/AppOpsManager$HistoricalOp.getDiscreteAccessAt:(I)Landroid/app/AppOpsManager$AttributedOpEntry; 
176 ········//···176:·astore··········16 
177 ········//···178:·aload···········8 
178 ········//···180:·invokevirtual···android/app/AppOpsManager$AttributedHistoricalOps.getTag:()Ljava/lang/String; 
179 ········//···183:·astore··········17 
180 ········//···185:·aload_2········ 
181 ········//···186:·aload···········17 
182 ········//···188:·invokeinterface·java/util/Map.get:(Ljava/lang/Object;)Ljava/lang/Object; 
183 ········//···193:·checkcast·······Ljava/lang/Integer; 
184 ········//···196:·astore··········17 
185 ········//···198:·aload···········17 
186 ········//···200:·ifnonnull·······209 
187 ········//···203:·iconst_0······· 
188 ········//···204:·invokestatic····java/lang/Integer.valueOf:(I)Ljava/lang/Integer; 
189 ········//···207:·astore··········17 
190 ········//···209:·aload···········5 
191 ········//···211:·aload···········17 
192 ········//···213:·invokeinterface·java/util/Map.containsKey:(Ljava/lang/Object;)Z 
193 ········//···218:·istore··········18 
194 ········//···220:·iload···········18 
195 ········//···222:·ifne············264 
196 ········//···225:·new·············Lcom/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage$AttributionLabelledGroupUsage$Builder; 
197 ········//···228:·astore··········19 
198 ········//···230:·aload···········17 
199 ········//···232:·invokevirtual···java/lang/Integer.intValue:()I 
200 ········//···235:·istore··········20 
201 ········//···237:·aload_0········ 
202 ········//···238:·invokevirtual···com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage.getGroup:()Lcom/android/permissioncontroller/permission/model/AppPermissionGroup; 
203 ········//···241:·astore··········6 
204 ········//···243:·aload···········19 
205 ········//···245:·iload···········20 
206 ········//···247:·aload···········6 
207 ········//···249:·invokespecial···com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage$AttributionLabelledGroupUsage$Builder.<init>:(ILcom/android/permissioncontroller/permission/model/AppPermissionGroup;)V 
208 ········//···252:·aload···········5 
209 ········//···254:·aload···········17 
210 ········//···256:·aload···········19 
211 ········//···258:·invokeinterface·java/util/Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 
212 ········//···263:·pop············ 
213 ········//···264:·aload···········5 
214 ········//···266:·aload···········17 
215 ········//···268:·invokeinterface·java/util/Map.get:(Ljava/lang/Object;)Ljava/lang/Object; 
216 ········//···273:·checkcast·······Lcom/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage$AttributionLabelledGroupUsage$Builder; 
217 ········//···276:·aload···········10 
218 ········//···278:·invokevirtual···com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage$AttributionLabelledGroupUsage$Builder.addAttributionTag:(Ljava/lang/String;)Lcom/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage$AttributionLabelledGroupUsage$Builder; 
219 ········//···281:·pop············ 
220 ········//···282:·aload···········5 
221 ········//···284:·aload···········17 
222 ········//···286:·invokeinterface·java/util/Map.get:(Ljava/lang/Object;)Ljava/lang/Object; 
223 ········//···291:·checkcast·······Lcom/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage$AttributionLabelledGroupUsage$Builder; 
224 ········//···294:·astore··········6 
225 ········//···296:·new·············Lkotlin/Triple; 
226 ········//···299:·astore··········17 
227 ········//···301:·bipush··········11 
228 ········//···303:·istore··········18 
229 ········//···305:·aload···········16 
230 ········//···307:·iload···········18 
231 ········//···309:·invokevirtual···android/app/AppOpsManager$AttributedOpEntry.getLastAccessTime:(I)J 
232 ········//···312:·invokestatic····java/lang/Long.valueOf:(J)Ljava/lang/Long; 
233 ········//···315:·astore··········21 
234 ········//···317:·aload···········16 
235 ········//···319:·iload···········18 
236 ········//···321:·invokevirtual···android/app/AppOpsManager$AttributedOpEntry.getLastDuration:(I)J 
237 ········//···324:·lstore··········22 
238 ········//···326:·lload···········22 
239 ········//···328:·invokestatic····java/lang/Long.valueOf:(J)Ljava/lang/Long; 
240 ········//···331:·astore_1······· 
241 ········//···332:·aload···········16 
242 ········//···334:·iload···········18 
243 ········//···336:·invokevirtual···android/app/AppOpsManager$AttributedOpEntry.getLastProxyInfo:(I)Landroid/app/AppOpsManager$OpEventProxyInfo; 
244 ········//···339:·astore··········16 
245 ········//···341:·aload···········17 
246 ········//···343:·aload···········21 
247 ········//···345:·aload_1········ 
248 ········//···346:·aload···········16 
249 ········//···348:·invokespecial···kotlin/Triple.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V 
250 ········//···351:·aload···········6 
251 ········//···353:·aload···········17 
252 ········//···355:·invokevirtual···com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage$AttributionLabelledGroupUsage$Builder.addDiscreteAccessTime:(Lkotlin/Triple;)Lcom/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage$AttributionLabelledGroupUsage$Builder; 
253 ········//···358:·pop············ 
254 ········//···359:·iload···········15 
255 ········//···361:·iconst_1······· 
256 ········//···362:·iadd··········· 
257 ········//···363:·istore··········15 
258 ········//···365:·aconst_null···· 
259 ········//···366:·astore··········6 
260 ········//···368:·aload_0········ 
261 ········//···369:·astore_1······· 
262 ········//···370:·goto············162 
263 ········//···373:·aload_0········ 
264 ········//···374:·astore_1······· 
265 ········//···375:·goto············109 
266 ········//···378:·iload···········7 
267 ········//···380:·iconst_1······· 
268 ········//···381:·iadd··········· 
269 ········//···382:·istore··········7 
270 ········//···384:·aconst_null···· 
271 ········//···385:·astore··········6 
272 ········//···387:·aload_0········ 
273 ········//···388:·astore_1······· 
274 ········//···389:·goto············62 
275 ········//···392:·aload···········5 
276 ········//···394:·invokeinterface·java/util/Map.entrySet:()Ljava/util/Set; 
277 ········//···399:·invokeinterface·java/util/Set.stream:()invokeinterface!!!·ERROR 
278 ········//···404:·astore_1······· 
279 ········//···405:·getstatic·······com/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage$$ExternalSyntheticLambda1.INSTANCE:Lcom/android/permissioncontroller/permission/model/AppPermissionUsage$GroupUsage$$ExternalSyntheticLambda1; 
280 ········//···408:·astore_2······· 
281 ········//···409:·aload_1········ 
282 ········//···410:·aload_2········ 
283 ········//···411:·invokeinterface·invokeinterface!!!·ERROR 
284 ········//···416:·astore_1······· 
285 ········//···417:·invokestatic····invokestatic···!!!·ERROR 
286 ········//···420:·astore_2······· 
287 ········//···421:·aload_1········ 
288 ········//···422:·aload_2········ 
289 ········//···423:·invokeinterface·invokeinterface!!!·ERROR 
290 ········//···428:·checkcast·······Ljava/util/List; 
291 ········//···431:·areturn········ 
292 ········//···432:·new·············Ljava/util/ArrayList; 
293 ········//···435:·astore_1······· 
294 ········//···436:·aload_1········ 
295 ········//···437:·invokespecial···java/util/ArrayList.<init>:()V 
296 ········//···440:·aload_1········ 
297 ········//···441:·areturn········ 
298 ········//· 
299 ········//·The·error·that·occurred·was: 
300 ········//· 
301 ········//·java.lang.IllegalArgumentException:·Argument·'type'·cannot·be·null. 
302 ········//·····at·com.strobel.core.VerifyArgument.notNull(VerifyArgument.java:38) 
303 ········//·····at·com.strobel.assembler.ir.attributes.LocalVariableTableEntry.<init>(LocalVariableTableEntry.java:41) 
304 ········//·····at·com.strobel.assembler.ir.MetadataReader.readAttributeCore(MetadataReader.java:183) 
305 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readAttributeCore(ClassFileReader.java:260) 
306 ········//·····at·com.strobel.assembler.ir.MetadataReader.readAttribute(MetadataReader.java:50) 
307 ········//·····at·com.strobel.assembler.ir.MetadataReader.readAttributes(MetadataReader.java:40) 
308 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readAttributeCore(ClassFileReader.java:202) 
309 ········//·····at·com.strobel.assembler.ir.MetadataReader.inflateAttribute(MetadataReader.java:368) 
310 ········//·····at·com.strobel.assembler.ir.MetadataReader.inflateAttributes(MetadataReader.java:345) 
311 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.defineMethods(ClassFileReader.java:977) 
312 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:440) 
313 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
314 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
315 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
316 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
317 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
318 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
319 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:91) 
320 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
321 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.populateNamedInnerTypes(ClassFileReader.java:697) 
322 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:441) 
323 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
324 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
325 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
326 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
327 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
328 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
329 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:91) 
330 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
331 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.populateNamedInnerTypes(ClassFileReader.java:697) 
332 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:441) 
333 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
334 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
335 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
336 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
337 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
338 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
339 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:91) 
340 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
341 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.populateNamedInnerTypes(ClassFileReader.java:697) 
342 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:441) 
343 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
344 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
345 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
346 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
347 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
348 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
349 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.populateAnonymousInnerTypes(ClassFileReader.java:763) 
350 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:442) 
351 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
352 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
353 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
354 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
355 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
356 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
357 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:91) 
358 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
359 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.populateNamedInnerTypes(ClassFileReader.java:697) 
360 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:441) 
361 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
362 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
363 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
364 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
365 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
366 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
367 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.populateAnonymousInnerTypes(ClassFileReader.java:763) 
368 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:442) 
369 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
370 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
371 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
372 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
373 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
374 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
375 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:91) 
376 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
377 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.populateNamedInnerTypes(ClassFileReader.java:697) 
378 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:441) 
379 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
380 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
381 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
382 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
383 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
384 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
385 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.populateAnonymousInnerTypes(ClassFileReader.java:763) 
386 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:442) 
387 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
388 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
389 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
390 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
391 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
392 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
393 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:91) 
394 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
395 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.populateNamedInnerTypes(ClassFileReader.java:697) 
396 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:441) 
397 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
398 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
399 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
400 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
401 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
402 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
403 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.populateAnonymousInnerTypes(ClassFileReader.java:763) 
404 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:442) 
405 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
406 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
407 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
408 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
409 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
410 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
411 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:91) 
412 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
413 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.populateNamedInnerTypes(ClassFileReader.java:697) 
414 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:441) 
415 ········//·····at·com.strobel.assembler.metadata.ClassFileReader.readClass(ClassFileReader.java:376) 
416 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveType(MetadataSystem.java:124) 
417 ········//·····at·com.strobel.decompiler.NoRetryMetadataSystem.resolveType(DecompilerDriver.java:482) 
418 ········//·····at·com.strobel.assembler.metadata.MetadataSystem.resolveCore(MetadataSystem.java:76) 
419 ········//·····at·com.strobel.assembler.metadata.MetadataResolver.resolve(MetadataResolver.java:104) 
420 ········//·····at·com.strobel.assembler.metadata.CoreMetadataFactory$UnresolvedType.resolve(CoreMetadataFactory.java:614) 
421 ········//·····at·com.strobel.assembler.metadata.ParameterizedType.getGenericParameters(ParameterizedType.java:71) 
422 ········//·····at·com.strobel.assembler.metadata.TypeReference.hasGenericParameters(TypeReference.java:244) 
423 ········//·····at·com.strobel.assembler.metadata.TypeReference.isGenericType(TypeReference.java:263) 
424 ········//·····at·com.strobel.assembler.metadata.TypeReference.containsGenericParameters(TypeReference.java:38) 
425 ········//·····at·com.strobel.assembler.metadata.MethodReference.containsGenericParameters(MethodReference.java:71) 
426 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferCall(TypeAnalysis.java:2487) 
427 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.doInferTypeForExpression(TypeAnalysis.java:1029) 
428 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:803) 
429 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:770) 
430 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.doInferTypeForExpression(TypeAnalysis.java:881) 
431 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:803) 
432 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.runInference(TypeAnalysis.java:672) 
433 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.invalidateDependentExpressions(TypeAnalysis.java:759) 
434 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.doInferTypeForExpression(TypeAnalysis.java:1011) 
435 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:803) 
436 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:778) 
437 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferCall(TypeAnalysis.java:2659) 
438 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.doInferTypeForExpression(TypeAnalysis.java:1029) 
439 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:803) 
440 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:770) 
441 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:766) 
442 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.doInferTypeForExpression(TypeAnalysis.java:1499) 
443 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:803) 
444 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:770) 
445 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:766) 
446 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferCall(TypeAnalysis.java:2453) 
447 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.doInferTypeForExpression(TypeAnalysis.java:1029) 
448 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:803) 
449 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.runInference(TypeAnalysis.java:672) 
450 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.invalidateDependentExpressions(TypeAnalysis.java:759) 
451 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.doInferTypeForExpression(TypeAnalysis.java:1011) 
452 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:803) 
453 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:778) 
454 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferCall(TypeAnalysis.java:2659) 
455 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.doInferTypeForExpression(TypeAnalysis.java:1029) 
456 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:803) 
457 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.runInference(TypeAnalysis.java:672) 
458 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.invalidateDependentExpressions(TypeAnalysis.java:759) 
459 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.doInferTypeForExpression(TypeAnalysis.java:1011) 
460 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:803) 
461 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:770) 
462 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:766) 
463 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferCall(TypeAnalysis.java:2453) 
464 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.doInferTypeForExpression(TypeAnalysis.java:1029) 
465 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:803) 
466 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:770) 
467 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.doInferTypeForExpression(TypeAnalysis.java:881) 
468 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.inferTypeForExpression(TypeAnalysis.java:803) 
469 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.runInference(TypeAnalysis.java:672) 
470 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.runInference(TypeAnalysis.java:655) 
471 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.runInference(TypeAnalysis.java:365) 
472 ········//·····at·com.strobel.decompiler.ast.TypeAnalysis.run(TypeAnalysis.java:96) 
473 ········//·····at·com.strobel.decompiler.ast.AstOptimizer.optimize(AstOptimizer.java:109) 
474 ········//·····at·com.strobel.decompiler.ast.AstOptimizer.optimize(AstOptimizer.java:42) 
475 ········//·····at·com.strobel.decompiler.languages.java.ast.AstMethodBodyBuilder.createMethodBody(AstMethodBodyBuilder.java:214) 
476 ········//·····at·com.strobel.decompiler.languages.java.ast.AstMethodBodyBuilder.createMethodBody(AstMethodBodyBuilder.java:99) 
477 ········//·····at·com.strobel.decompiler.languages.java.ast.AstBuilder.createMethodBody(AstBuilder.java:757) 
478 ········//·····at·com.strobel.decompiler.languages.java.ast.AstBuilder.createMethod(AstBuilder.java:655) 
479 ········//·····at·com.strobel.decompiler.languages.java.ast.AstBuilder.addTypeMembers(AstBuilder.java:532) 
480 ········//·····at·com.strobel.decompiler.languages.java.ast.AstBuilder.createTypeCore(AstBuilder.java:499) 
481 ········//·····at·com.strobel.decompiler.languages.java.ast.AstBuilder.createTypeNoCache(AstBuilder.java:141) 
482 ········//·····at·com.strobel.decompiler.languages.java.ast.AstBuilder.createType(AstBuilder.java:130) 
483 ········//·····at·com.strobel.decompiler.languages.java.ast.AstBuilder.addType(AstBuilder.java:105) 
484 ········//·····at·com.strobel.decompiler.languages.java.JavaLanguage.buildAst(JavaLanguage.java:71) 
485 ········//·····at·com.strobel.decompiler.languages.java.JavaLanguage.decompileType(JavaLanguage.java:59) 
486 ········//·····at·com.strobel.decompiler.DecompilerDriver.decompileType(DecompilerDriver.java:336) 
487 ········//·····at·com.strobel.decompiler.DecompilerDriver.main(DecompilerDriver.java:144) 
488 ········//· 
489 ········throw·new·IllegalStateException("An·error·occurred·while·decompiling·this·method."); 
490 ····} 
491 ···· 
492 ····public·ArrayList·getAttributionTags()·{81 ····public·ArrayList·getAttributionTags()·{
493 ········final·AppOpsManager$HistoricalPackageOps·mHistoricalUsage·=·this.mHistoricalUsage;82 ········final·AppOpsManager$HistoricalPackageOps·mHistoricalUsage·=·this.mHistoricalUsage;
494 ········if·(mHistoricalUsage·!=·null·&&·mHistoricalUsage.getAttributedOpsCount()·!=·0)·{83 ········if·(mHistoricalUsage·!=·null·&&·mHistoricalUsage.getAttributedOpsCount()·!=·0)·{
495 ············final·ArrayList<String>·list·=·new·ArrayList<String>();84 ············final·ArrayList<String>·list·=·new·ArrayList<String>();
496 ············for·(int·attributedOpsCount·=·this.mHistoricalUsage.getAttributedOpsCount(),·i·=·0;·i·<·attributedOpsCount;·++i)·{85 ············for·(int·attributedOpsCount·=·this.mHistoricalUsage.getAttributedOpsCount(),·i·=·0;·i·<·attributedOpsCount;·++i)·{
497 ················list.add(this.mHistoricalUsage.getAttributedOpsAt(i).getTag());86 ················list.add(this.mHistoricalUsage.getAttributedOpsAt(i).getTag());
498 ············}87 ············}