【问题标题】:Sources for Android API 24 Platform not found (Android Studio 2.1)未找到 Android API 24 平台的源 (Android Studio 2.1)
【发布时间】:2016-11-09 02:25:54
【问题描述】:

在 Android Studio 2.1 中,我使用 API 24 很好,然后突然开始在我的 AndroidManifest.xml 中看到“找不到 Android API 24 平台的源”警告。

Rerunning the Android SDK Manager 在 Android Studio 中设置,删除其他不支持的 API,etc 对我不起作用。我该如何解决这个问题?

【问题讨论】:

    标签: macos android-manifest android-studio-2.1


    【解决方案1】:

    试试这个方法,我从here复制过来的。

    Android Studio 2.1 报告:通过重置 SDK 解决了该问题。

    首选项 -> 外观和行为 -> 系统设置 -> Android SDK。

    点击 Android SDK 位置右侧的编辑。下一步,下一步,下一步,完成向导,瞧!

    【讨论】:

    • 这个方法似乎触发了第一次没有发生的索引步骤。作为参考,我通过独立 SDK 管理器下载了源代码。不按照上面的方法不知道怎么触发索引方法。
    • @DrZaphod 你应该确保源代码是通过 SDK 管理器下载的,如果仍然无法使用,请尝试使用上面的方法。 (对不起我的英语不好,我可能不明白你的意思。)
    • 很高兴这对某些人有用,但我的问题是当这个解决方案不起作用时如何解决问题。这是我在问题中链接的相同解决方案(尽管是不同的帖子)。无论如何,这就是为什么我没有将此标记为答案:-)
    【解决方案2】:

    搜索后,我找到了足够接近的答案,足以让我找到自己的 API 24 答案。对我来说,这只是删除 API 24、关闭 Android Studio 和(重新打开后)让 Android Studio 检测 API 24 的问题丢失并为我下载。我认为这也适用于其他 API 版本。

    更新:正如其他人指出的那样,在提出/回答这个问题时,API 24 没有在 SDK 管理器中列出“来源”。但是,之前一切正常,并在遵循此答案后继续工作。所以这似乎是一个值得一提的技术性问题。

    我有针对 API 24 和 Google Play Alpha 测试的应用程序目标和编译。

    Android N APIs are now final(截至 2016 年 6 月 15 日)。

    步骤(Mac):

    1. 打开 SDK 管理器: 工具 > Android > SDK 管理器
    2. 删除 API 24: 取消选中复选框 > 单击确定,再次确定以确认删除
    3. 退出 Android Studio (⌘Q)
    4. 在 Android Studio 中重新打开您的项目
    5. 安装缺少的平台并同步项目
      • 在 Messages Gradle Sync 面板中单击此可点击链接

    Gradle Sync 完成后应该处理它。

    【讨论】:

    • “应该注意这一点”是否意味着 Android Studio 将尽可能在 API 24 项目上显示 API 23 源代码?
    • @Louis 对我来说,问题似乎是某种损坏等,并且通过遵循这个解决方案 Android Studio 修复了它。在此之后,“来源”仍然没有出现在 API 24 下的列表中,但它确实让事情变得正常。我不确定 Android Studio 究竟是如何处理这个问题的,但它确实可以在列表中没有显示“Sources”的情况下工作(也许它以某种方式使用 API 23 Sources)。
    • 它在后台使用android.jar。我个人将 API 23 复制为 API 24 源(并将一些复制的 xml 文件编辑为 24),因为有时在针对 API 24 进行编译时需要查看源
    • 试过这个解决方案,对我不起作用。仍然显示反编译的代码和“找不到源”。 @LouisCad 我也尝试过这样做,但没有运气,AS 无法识别文件夹。
    • 也不适合我,如何在使用 24 api 的同时使用 23 api 文档应该是问题,无论 24 api 是否有文档。
    【解决方案3】:

    没有android 24的源码,只有以下的23版本 Sources for Android SDK 23

    【讨论】:

    • 是的,虽然有点技术性(我认为),因为在此之前它工作正常,并且在我在解决方案中发布之后继续正常工作。我更新了原始问题以澄清一点。谢谢。
    【解决方案4】:

    重新安装可能会解决一些问题,但今天晚上(2016 年 7 月 11 日 2300 EST)24 的源代码尚不可用。当谷歌说它的汤时它会出现:

    Marshmallow (23) 是最后一个有源代码的版本。

    [8/26 更新]

    SDK 24 现在有源代码。这是汤!

    【讨论】:

    • 源是 java 文件,而不仅仅是 jars。在我的系统上,我可以在 ~/Android/Sdk/sources/android-23 中看到 android-23 的源代码。它不应该对构建产生影响,但是如果文档不清楚,有时源代码会很好。此问题的标题显示未找到 24 的来源。
    • 当然标题......这是我开始看到的警告,尽管直到那个(突然的)点之前它对我来说都很好。无论如何,感谢您的反馈,我已经更新了问题以澄清一点。
    【解决方案5】:

    没有 api 24 的来源。我们应该等待 google 发布 android sdk 的来源。

    【讨论】:

    • 不知道为什么人们不赞成这个。我看到了同样的事情
    【解决方案6】:

    文件 - 使现金无效并重新启动 这对我有用。

    【讨论】:

      【解决方案7】:

      我从 android.jar 获得大多数类的源代码,但不是 android.Manifest 它有一些有用的 cmets,例如关于可以方便地直接在 Android Studio 中使用的权限。 android\sdk\platforms\android-29\android-stubs-src.jar 确实包含有用的 android/Manifest.java 源文件,但是 android\sdk\sources\android-29\android 中缺少它。据我所知,在任何地方都没有可见的“附加源”,只需获取反编译版本即可。

      解压 android/Manifest.java 并重新启动 Android Studio 后,它就在那里!有点破解,但总比没有来源好。

      【讨论】:

        猜你喜欢
        • 2016-08-17
        • 2016-10-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-05-10
        • 2020-08-04
        • 2016-08-25
        • 2016-10-28
        相关资源
        最近更新 更多