如何将OpenCameraApp作为模块集成到我的项目中

时间:2017-11-17 11:03:32

标签: android module project add

我已将This项目集成为我的应用程序中的模块。当我整合时,如下所述得到错误。我有很多关于SO的链接,建议我降级工作室版本,或升级等。跟随this for adding module in my project

select

1 个答案:

答案 0 :(得分:0)

以下是在另一个应用程序中将项目添加为模块/库时可能遇到的困难的答案。

按照this video tutorial将项目添加为模块/库。

以下是您需要考虑的一些问题。

  1. 更改build.gradle(库)的第一行,来自" apply plugin:' com.android.application' " to" apply plugin:' com.android.library' "
  2. 从build.gradle(library)中删除applicationId
  3. 确保build.gradle(app)和build.gradle(library)应完全相同。 如下
  4. 的build.gradle(APP)

        apply plugin: 'com.android.application'
    
        android {
          compileSdkVersion 22
          buildToolsVersion "22.0.1"
    
          defaultConfig {
             applicationId "com.xyz.xyzxyz"
             minSdkVersion 7
             targetSdkVersion 22
             versionCode 1
             versionName "1.0"
         }
        buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        }
        }
    
         dependencies {
             compile project(':openCamera')
             compile fileTree(dir: 'libs', include: ['*.jar'])
         }
    

    的build.gradle(库)

    apply plugin: 'com.android.library'
    
     android {
         compileSdkVersion 22
         buildToolsVersion "22.0.1"
    
         defaultConfig {
             minSdkVersion 7
             targetSdkVersion 22
             versionCode 1
             versionName "1.0"
         }
         buildTypes {
             release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    }
    
     dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.mcxiaoke.volley:library:1.0.18'
        compile 'com.android.support:appcompat-v7:22.0.0'
     }
    
    1. 如果您的应用程序和库模块都具有MainActivity和activity_main.xml文件,则在应用程序或库中进行更改。因为你可能会在#40(lineNumber)等的二进制xml错误中得到rumTime错误。
    2. 你的android studio版本和项目级别gradle依赖应该有相同的版本。就像你的工作室版本是2.3.1那样,依赖块应该有" classpath' com.android.tools.build:gradle:2.3.1' "
    3. 最后但并非最不重要的是,从图书馆的清单文件中删除图书馆的mainActivity标记。代码如下所示。如果您没有删除或评论它,那么项目中会有两个启动器,它会创建两个图标。

          <!-- Comment or delete tag to avoid two launchers in your application -->
          <intent-filter> 
              <action android:name="android.intent.action.MAIN" />
              <category android:name="android.intent.category.LAUNCHER" />
              <category android:name="android.intent.category.DEFAULT"/>
          </intent-filter>