【AS】Android Studio無法關聯Api23源碼-提示Souces for android api 23 platform not found

        Android Studio 中關聯源碼跟 Eclipse 不太一樣:

        Eclipse 關聯的 SDK 默認沒附帶源碼,需要自己去下載,存放在 $USER_HOME$/charo/software/sdk/sdk/source/src 之下,源碼中附帶有源碼的註釋文檔,以 Android 中 Activity 的 findViewById 方法爲例,如下所示(Activity.class):

 

/**
     * Finds a view that was identified by the id attribute from the XML that
     * was processed in {@link #onCreate}.
     *
     * @return The view if found or null otherwise.
     */
    @Nullable
    public View findViewById(@IdRes int id) {
        return getWindow().findViewById(id);
    }

        Android Studio 關聯的 SDK 本身就自帶有源碼,但默認源碼中不帶註釋,如下(Activity.class):

 

 

    /** @deprecated */
    @Deprecated
    public void stopManagingCursor(Cursor c) {
        throw new RuntimeException("Stub!");
    }

    public View findViewById(int id) {
        throw new RuntimeException("Stub!");
    }

    public ActionBar getActionBar() {
        throw new RuntimeException("Stub!");
    }

所以 Android Studio 需要我們自己去下載並關聯註釋文檔,首先是下載:

 

其次是關聯,vi $USER_HOME$/.AndroidStudio2.1/config/options/jdk.table.xml(粗體彩色字爲添加的內容):

 

<application>
  <component name="ProjectJdkTable">
    <jdk version="2">
      <name value="Android API 23 Platform" /> 
      <type value="Android SDK" />
      <homePath value="$USER_HOME$/charo/software/adt-bundle-linux-x86-20140321/sdk" />
      <roots>
        <annotationsPath>
          <root type="composite">
            <root type="simple" url="jar://$APPLICATION_HOME_DIR$/plugins/android/lib/androidAnnotations.jar!/" />
          </root>
        </annotationsPath>
        <classPath>
          <root type="composite">
            <root type="simple" url="jar://$USER_HOME$/charo/software/adt-bundle-linux-x86-20140321/sdk/platforms/android-23/android.jar!/" />
            <root type="simple" url="file://$USER_HOME$/charo/software/adt-bundle-linux-x86-20140321/sdk/platforms/android-23/data/res" />
          </root>
        </classPath>
        <javadocPath>
          <root type="composite">
            <root type="simple" url="file://$USER_HOME$/charo/software/adt-bundle-linux-x86-20140321/sdk/docs/reference" />
          </root>
        </javadocPath>
        <sourcePath>
          <root type="composite">
		  	<root type="simple" url="file://$USER_HOME$/charo/software/adt-bundle-linux-x86-20140321/sdk/platforms/android-23" />
		  </root>
        </sourcePath>
      </roots>
      <additional jdk="1.7" sdk="android-23" />
    </jdk>
    <jdk version="2">
      <name value="1.7" />
      <type value="JavaSDK" />
      <version value="java version "1.7.0_55"" />
      <homePath value="$USER_HOME$/charo/software/jdk1.7.0_55" />
      <roots>
        <annotationsPath>
          <root type="composite">
            <root type="simple" url="jar://$APPLICATION_HOME_DIR$/lib/jdkAnnotations.jar!/" />
          </root>
        </annotationsPath>
        <classPath>
          <root type="composite">
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/charsets.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/deploy.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/dnsns.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/localedata.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/mysql-connector-java-5.1.16.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/sunec.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/sunjce_provider.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/sunpkcs11.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/zipfs.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/javaws.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/jce.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/jfr.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/jfxrt.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/jsse.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/management-agent.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/plugin.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/resources.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/rt.jar!/" />
          </root>
        </classPath>
        <javadocPath>
          <root type="composite">
            <root type="simple" url="http://docs.oracle.com/javafx/2/api/" />
          </root>
        </javadocPath>
        <sourcePath>
          <root type="composite">
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/src.zip!/" />
          </root>
        </sourcePath>
      </roots>
      <additional />
    </jdk>
  </component>
</application>
file://$USER_HOME$/charo/software/adt-bundle-linux-x86-20140321/sdk/docs/reference" />
          </root>
        </javadocPath>
        <sourcePath>
          <root type="composite">
		  	<root type="simple" url="file://$USER_HOME$/charo/software/adt-bundle-linux-x86-20140321/sdk/platforms/android-23" />
		  </root>
        </sourcePath>
      </roots>
      <additional jdk="1.7" sdk="android-23" />
    </jdk>
    <jdk version="2">
      <name value="1.7" />
      <type value="JavaSDK" />
      <version value="java version "1.7.0_55"" />
      <homePath value="$USER_HOME$/charo/software/jdk1.7.0_55" />
      <roots>
        <annotationsPath>
          <root type="composite">
            <root type="simple" url="jar://$APPLICATION_HOME_DIR$/lib/jdkAnnotations.jar!/" />
          </root>
        </annotationsPath>
        <classPath>
          <root type="composite">
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/charsets.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/deploy.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/dnsns.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/localedata.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/mysql-connector-java-5.1.16.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/sunec.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/sunjce_provider.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/sunpkcs11.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/ext/zipfs.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/javaws.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/jce.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/jfr.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/jfxrt.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/jsse.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/management-agent.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/plugin.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/resources.jar!/" />
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/jre/lib/rt.jar!/" />
          </root>
        </classPath>
        <javadocPath>
          <root type="composite">
            <root type="simple" url="http://docs.oracle.com/javafx/2/api/" />
          </root>
        </javadocPath>
        <sourcePath>
          <root type="composite">
            <root type="simple" url="jar://$USER_HOME$/charo/software/jdk1.7.0_55/src.zip!/" />
          </root>
        </sourcePath>
      </roots>
      <additional />
    </jdk>
  </component>
</application>

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章