我正在运行安装了Android Studios的Windows 10但我从命令行执行了所有这些操作。我下载了最新的android sdk。然后我从github下载了项目文件。
我运行了一个构建ndk-build。我认为它是成功的,因为它花了大约20分钟左右。在生成文件的子文件夹libs/mips
中:liblept.so
,libpng.so
和libtess.so
。
然后我尝试运行这样的android更新项目命令:
C:\Program Files (x86)\Android\android-sdk\tools>android update project -p c:\tess\tess-two
我确保在tess-two文件夹中有AndroidManifest.xml
。
我收到此错误消息:
Error: The project either has no target set or the target is invalid.
Please provide a --target to the 'android.bat update' command.
在研究Android Development页面后,我运行了这个命令:
C:\Program Files (x86)\Android\android-sdk\tools>android list targets
结果只是一行没有列表,如果这样的目标没有错误消息或任何东西:
可用的Android目标:
我如何才能让项目更新为我试图关注here的示例。
我尝试了"android list target" show nothing for AOSP build找到的解决方案......但是在我建立AVD之前我得到了一个错误消息,我需要一个目标ID。
我尝试了一些随机目标ID,但它们无效。我做错了什么?
感谢您的帮助。
编辑:新信息 感谢您的帮助,我使用以下内容获得了列表:" android list"而不是" android目标列表"。必须是Windows版本;我刚升级到Windows 10.所以这就是我得到的。问题是我如何知道使用哪个目标ID?在我的AndroidManifest.xml文件中,我看到了这个属性:
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="20" />
我有三个文件夹:&#34; armeabi-v7a&#34;,&#34; mips&#34;,&#34; x860&#34;。每个文件夹有三个文件:&#34; liblept.so&#34;,&#34; libpng.so&#34;,&#34; libtess.so&#34;。我发现的目标列表与targetSdkVersion或三个库文件中的任何一个有关吗?
我不确定哪个用于android更新项目--path。 --target。
这是找到的列表:
C:\ android-sdk \ android-sdk-windows \ platforms&gt; android列表 可用的Android目标: 可用的Android虚拟设备:
无法加载以下Android虚拟设备: 名称:Nexus_5_API_22_x86 路径:C:\ Users .... android \ avd \ Nexus_5_API_22_x86.avd 错误:未知目标&#39; Google Inc.:Google API:22&#39;在C:\ Users .... android \ AVD \ Nexus_5_API_22_x86.ini 可用设备定义: id:0或&#34; tv_1080p&#34; 名称:Android TV(1080p) OEM:谷歌
id:1或&#34; tv_720p&#34; 名称:Android TV(720p) OEM:谷歌
id:2或&#34; wear_round&#34; 名称:Android Wear Round OEM:谷歌
id:3或&#34; wear_square&#34; 名称:Android Wear Square OEM:谷歌
id:4或&#34; Galaxy Nexus&#34; 名称:Galaxy Nexus
id:5或&#34; Nexus 10&#34; 姓名:Nexus 10
id:6或&#34; Nexus 4&#34; 姓名:Nexus 4
id:7或&#34; Nexus 5&#34; 姓名:Nexus 5
id:8或&#34; Nexus 6&#34; 姓名:Nexus 6
id:9或&#34; Nexus 7 2013&#34; 姓名:Nexus 7
id:10或&#34; Nexus 7&#34; 名称:Nexus 7(2012)
id:11或&#34; Nexus 9&#34; 姓名:Nexus 9
id:12或&#34; Nexus One&#34; 名称:Nexus One
id:13或&#34; Nexus S&#34; 姓名:Nexus S
id:14或&#34; 2.7在QVGA&#34; 名称:2.7&#34; QVGA
id:15或&#34; 2.7在QVGA滑块&#34; 名称:2.7&#34; QVGA滑块
id:16或&#34; 3.2 in HVGA滑块(ADP1)&#34; 名称:3.2&#34; HVGA滑块(ADP1)
id:17或&#34; 3.2在QVGA(ADP2)&#34; 名称:3.2&#34; QVGA(ADP2)
id:18或&#34; 3.3在WQVGA&#34; 姓名:3.3&#34; WQVGA
id:19或&#34; 3.4在WQVGA&#34; 名称:3.4&#34; WQVGA
id:20或&#34; 3.7 FWVGA滑块&#34; 姓名:3.7&#34; FWVGA滑块
id:21或&#34; 3.7在WVGA(Nexus One)&#34; 姓名:3.7&#34; WVGA(Nexus One)
id:22或&#34; 4在WVGA(Nexus S)&#34; 姓名:4&#34; WVGA(Nexus S)
id:23或&#34; 4.65in 720p(Galaxy Nexus)&#34; 姓名:4.65&#34; 720p(Galaxy Nexus)
id:24或&#34; 4.7在WXGA&#34; 名称:4.7&#34; WXGA
id:25或&#34; 5.1在WVGA&#34; 名称:5.1&#34; WVGA
id:26或&#34; 5.4在FWVGA&#34; 姓名:5.4&#34; FWVGA
id:27或&#34; 7在WSVGA(平板电脑)&#34; 姓名:7&#34; WSVGA(平板电脑)
id:28或&#34; 10.1在WXGA(平板电脑)&#34; 名称:10.1&#34; WXGA(平板电脑) OEM:通用
答案 0 :(得分:1)
为确保您至少有一个可供使用的目标,请导航至sdk/installation/path/platforms
并查看是否有任何版本的Android。
这是我使用android list targets
获得的输出:
Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar
Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar
Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar
Available Android targets:
----------
id: 1 or "android-19"
Name: Android 4.4.2
Type: Platform
API level: 19
Revision: 4
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in
Tag/ABIs : default/armeabi-v7a
----------
id: 2 or "android-22"
Name: Android 5.1.1
Type: Platform
API level: 22
Revision: 2
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in
Tag/ABIs : android-tv/armeabi-v7a, android-tv/x86, default/armeabi-v7a, default/x86, default/x86_64
----------
id: 3 or "android-23"
Name: Android 6.0
Type: Platform
API level: 23
Revision: 1
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in
Tag/ABIs : default/armeabi-v7a, default/x86, default/x86_64
----------
id: 4 or "Google Inc.:Google APIs (x86 System Image):19"
Name: Google APIs (x86 System Image)
Type: Add-On
Vendor: Google Inc.
Revision: 15
Description: Android x86 + Google APIs
Based on Android 4.4.2 (API level 19)
Libraries:
* com.android.future.usb.accessory (usb.jar)
API for USB Accessories
* com.google.android.media.effects (effects.jar)
Collection of video effects
* com.google.android.maps (maps.jar)
API for Google Maps
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in
Tag/ABIs : default/x86
----------
id: 5 or "Google Inc.:Google APIs:22"
Name: Google APIs
Type: Add-On
Vendor: Google Inc.
Revision: 1
Description: Android + Google APIs
Based on Android 5.1.1 (API level 22)
Libraries:
* com.android.future.usb.accessory (usb.jar)
API for USB Accessories
* com.google.android.media.effects (effects.jar)
Collection of video effects
* com.google.android.maps (maps.jar)
API for Google Maps
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in
Tag/ABIs : google_apis/armeabi-v7a, google_apis/x86, google_apis/x86_64
我看到你正在构建tess-two
,所以这是我到达那个部分时使用的命令:
android update project --path . --target 3
注意我使用.
作为路径,因为我已经在tess-two
文件夹中,而linux中的.
代表当前文件夹。
答案 1 :(得分:0)
我需要运行SDK Manager并更新并安装所有默认包:
C:\Program Files (x86)\Android\android-sdk\SDK Manager.exe