![](/img/trans.png)
[英]Could not find or load main class com.android.sdkmanager.Main
[英]SdkManager class is not available in latest android SDK
下載了最新的android Studio( android-studio-bundle-162.3871768-windows
)。 我們在軟件中使用com.android.sdklib.SdkManager
類,但在最新的Android Studio中,我無法在tools\\lib
文件夾中的任何jar
找到上述類。
誰能建議對此有更好的選擇?
如果您想獲取已安裝的所有目標列表以獲取知識,則只需運行SDK管理器即可。 但是,由於要調用getTargets()方法,因此意味着您需要將其用於其他目的。 查看android studio網頁上的文檔,以查找您要搜索的類是否存在以及其jar文件的位置。
我們可以在下面的鏈接中找到所有android類的源代碼。
SdkManagerCli類具有等效的listPackages()
方法,該方法將列出軟件包。
我們需要將sdklib-25.3.2.jar,repository-25.3.2.jar和common-25.3.2.jar導入到項目中。 以下是列出軟件包的工作代碼:-
import java.io.File;
import java.lang.reflect.Method;
import java.util.Collection;
import java.util.TreeSet;
import com.android.repository.Revision;
import com.android.repository.api.ConsoleProgressIndicator;
import com.android.repository.api.LocalPackage;
import com.android.repository.api.ProgressIndicator;
import com.android.repository.api.RepoManager;
import com.android.repository.impl.meta.RepositoryPackages;
import com.android.sdklib.repository.AndroidSdkHandler;
public class AndroidTesting {
public static void main(String[] args) {
listPackages();
}
private static void listPackages() {
AndroidSdkHandler mHandler = AndroidSdkHandler.getInstance(new
File("filePath")); //for eg:-sdk/platforms for API
ProgressIndicator progress = new ConsoleProgressIndicator();
RepoManager mRepoManager = mHandler.getSdkManager(progress);
mRepoManager.loadSynchronously(cacheExpirationMs, progress,
downloader, settings)(0, progress, null, null);
RepositoryPackages packages = mRepoManager.getPackages();
Collection<LocalPackage> locals = new TreeSet<LocalPackage>();
Collection<LocalPackage> localObsoletes = new
TreeSet<LocalPackage>();
for (LocalPackage local : packages.getLocalPackages().values()) {
if (local.obsolete()) {
localObsoletes.add(local);
} else {
locals.add(local);
}
Revision version = local.getVersion();
System.out.println(local.getDisplayName() + " "
+ local.getVersion() );
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.