2017-10-12 102 views
1

我需要使用Android Studio版本3和Android API 23在新的android手機項目中使用來自另一個android項目(gradle)的資源。我準備嘗試通過在此IDE中使用導入選項導入,但該模塊通過複製外部項目。在我的項目中,必須使用需求共享項目作爲框架(它是一個模塊),通過SVN進行同步,因此在這種情況下,我無法更新我更改爲框架的內容。我需要使用該模塊的解決方案,只需鏈接到該模塊而無需複製到項目中。如何通過鏈接引用將模塊導入到android studio?

回答

2

我認爲您正在尋找解決方案來開發和重新使用您的本地Android庫,對吧?所以按照我的步驟如下:

- 在android studio中,創建新的android項目(文件>新建>新建項目),並保存在任何你喜歡的位置。

- 創建新的模塊(文件>新建>新模塊>的Android庫)

例:模塊名稱= MyFirstLocalLibrary,包名:com.example.local.library

enter image description here

- 編輯的build.gradle文件,該文件是在你的庫文件夾的根目錄,但低於其他插件人準備好現在,添加應用插件:'maven-publish'在下申請插件:'com.android.library'。這個插件可以讓你發佈到Maven倉庫,甚至是本地倉庫。

apply plugin: 'maven-publish' 

publishing { 
    publications { 
     library(MavenPublication) { 
      // Don't forget to change these 
      groupId 'com.example.local.library' 
      artifactId 'MyFirstLocalLibrary' 
      version '1.0' 

      artifact(bundleRelease) 
      pom.withXml { 
       def dependenciesNode = asNode().appendNode('dependencies') 
       configurations.compile.allDependencies.each { 
        if (it.group != null && (it.name != null || "unspecified".equals(it.name)) && it.version != null) { 
         def dependencyNode = dependenciesNode.appendNode('dependency') 
         dependencyNode.appendNode('groupId', it.group) 
         dependencyNode.appendNode('artifactId', it.name) 
         dependencyNode.appendNode('version', it.version) 
        } 
       } 
      } 
     } 
    } 
} 

enter image description here

注意:不要忘了每次點擊**立即同步,您編輯的build.gradle

- 發佈模塊:點擊Gradle按鈕在你的android studio的右上角,你應該看到gradle任務名稱發佈

enter image description here

然後,你可以看到,有2個任務(publishLibaryPublicationToMavenLocalpublishToMavenLocal)。雙擊以上任務之一或右鍵單擊上述任務之一,然後選擇運行。 並等待看看您的版本是否爲BUILD BUILDING CONDUCT

,使您的存儲庫已發佈,您可以檢查您的存儲庫的.m2,你應該看到如下截圖:

enter image description here

- 如果建立是成功的,您的圖書館應該準備好使用。現在創建一個新的android項目並更新應用程序庫:在主應用程序的項目的build.gradle中添加mavenLocal()。

allprojects { 
    repositories { 
     google() 
     jcenter() 
     mavenCentral() 
     mavenLocal() 
    } 
} 

6個 - 更新應用程序依賴關係:開放的build.gradle(應用程序>的build.gradle),並加入當地的依賴性:

dependencies { 
    ..... 
    compile 'com.example.local.library:MyFirstLocalLibrary:1.0' 
} 

注意:不要忘記點擊開**現在每次同步,編輯build.gradle

全部完成。希望這有幫助:)。

+0

謝謝你給的解決方案,我會測試這個。 –

+0

@BongChannarith不客氣,我很樂意幫助:) – Mankeomorakort

+0

感謝您的幫助。 :) –

相關問題