DexOptions.java revision 579d7739c53a2707ad711a2d2cae46d7d782f061
14b6829f0d28990dd645e16386eb226d0f10c8731shiqian/* 24b6829f0d28990dd645e16386eb226d0f10c8731shiqian * Copyright (C) 2011 The Android Open Source Project 34b6829f0d28990dd645e16386eb226d0f10c8731shiqian * 44b6829f0d28990dd645e16386eb226d0f10c8731shiqian * Licensed under the Apache License, Version 2.0 (the "License"); 54b6829f0d28990dd645e16386eb226d0f10c8731shiqian * you may not use this file except in compliance with the License. 64b6829f0d28990dd645e16386eb226d0f10c8731shiqian * You may obtain a copy of the License at 74b6829f0d28990dd645e16386eb226d0f10c8731shiqian * 84b6829f0d28990dd645e16386eb226d0f10c8731shiqian * http://www.apache.org/licenses/LICENSE-2.0 94b6829f0d28990dd645e16386eb226d0f10c8731shiqian * 104b6829f0d28990dd645e16386eb226d0f10c8731shiqian * Unless required by applicable law or agreed to in writing, software 114b6829f0d28990dd645e16386eb226d0f10c8731shiqian * distributed under the License is distributed on an "AS IS" BASIS, 124b6829f0d28990dd645e16386eb226d0f10c8731shiqian * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 134b6829f0d28990dd645e16386eb226d0f10c8731shiqian * See the License for the specific language governing permissions and 144b6829f0d28990dd645e16386eb226d0f10c8731shiqian * limitations under the License. 154b6829f0d28990dd645e16386eb226d0f10c8731shiqian */ 164b6829f0d28990dd645e16386eb226d0f10c8731shiqian 174b6829f0d28990dd645e16386eb226d0f10c8731shiqianpackage com.android.dx.dex; 184b6829f0d28990dd645e16386eb226d0f10c8731shiqian 194b6829f0d28990dd645e16386eb226d0f10c8731shiqian/** 204b6829f0d28990dd645e16386eb226d0f10c8731shiqian * Container for options used to control details of dex file generation. 214b6829f0d28990dd645e16386eb226d0f10c8731shiqian */ 224b6829f0d28990dd645e16386eb226d0f10c8731shiqianpublic class DexOptions { 234b6829f0d28990dd645e16386eb226d0f10c8731shiqian /** target API level */ 244b6829f0d28990dd645e16386eb226d0f10c8731shiqian public int targetApiLevel = DexFormat.API_NO_EXTENDED_OPCODES; 254b6829f0d28990dd645e16386eb226d0f10c8731shiqian 264b6829f0d28990dd645e16386eb226d0f10c8731shiqian /** 274b6829f0d28990dd645e16386eb226d0f10c8731shiqian * Gets the dex file magic number corresponding to this instance. 284b6829f0d28990dd645e16386eb226d0f10c8731shiqian */ 294b6829f0d28990dd645e16386eb226d0f10c8731shiqian public String getMagic() { 304b6829f0d28990dd645e16386eb226d0f10c8731shiqian return DexFormat.apiToMagic(targetApiLevel); 314b6829f0d28990dd645e16386eb226d0f10c8731shiqian } 324b6829f0d28990dd645e16386eb226d0f10c8731shiqian 334b6829f0d28990dd645e16386eb226d0f10c8731shiqian /** 344b6829f0d28990dd645e16386eb226d0f10c8731shiqian * Returns whether extended opcodes are allowed. This became 354b6829f0d28990dd645e16386eb226d0f10c8731shiqian * allowed as of Ice Cream Sandwich. 364b6829f0d28990dd645e16386eb226d0f10c8731shiqian */ 374b6829f0d28990dd645e16386eb226d0f10c8731shiqian public boolean canUseExtendedOpcodes() { 384b6829f0d28990dd645e16386eb226d0f10c8731shiqian return targetApiLevel >= DexFormat.API_CURRENT; 394b6829f0d28990dd645e16386eb226d0f10c8731shiqian } 404b6829f0d28990dd645e16386eb226d0f10c8731shiqian} 414b6829f0d28990dd645e16386eb226d0f10c8731shiqian