2016-05-06 27 views
1

嗨,我試圖建立一個Twilio短信發送應用程序,我已經添加了所有這些東西build.gradle.This是我gradle.During應用程序乳寧,我越來越Twilio的Android gradle這個錯誤

`Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'. 

com.android.build.api.transform.TransformException:com.android.builder.packaging.DuplicateFileException:在APK中複製的重複文件META-INF/maven/org.apache.httpcomponents/httpcore/pom.xml File1:I: \ AS_Projects \ Tacos \ app \ libs \ twilio -java -sdk-3.8.0 -jar -with-dependencies.jar File2:I:\ AS_Projects \ Tacos \ app \ libs \ httpcore-4.4.4.jar`

//我每次都

'apply plugin: 'com.android.application' 

android {

packagingOptions { 
    exclude 'META-INF/NOTICE' // will not include NOTICE file 
    exclude 'META-INF/LICENSE' // will not include LICENSE file 
} 


compileSdkVersion 23 
buildToolsVersion '23.0.3' 

defaultConfig { 
    applicationId "com.twilio.client.quickstart" 
    minSdkVersion 9 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
} 

defaultConfig { 
    applicationId "android.revengine.com.tacos" 
    minSdkVersion 16 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
} 

packagingOptions { 
    exclude 'META-INF/DEPENDENCIES.txt' 
    exclude 'META-INF/LICENSE.txt' 
    exclude 'META-INF/NOTICE.txt' 
    exclude 'META-INF/NOTICE' 
    exclude 'META-INF/LICENSE' 
    exclude 'META-INF/DEPENDENCIES' 
    exclude 'META-INF/notice.txt' 
    exclude 'META-INF/license.txt' 
    exclude 'META-INF/dependencies.txt' 
    exclude 'META-INF/LGPL2.1' 
} 


buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 
productFlavors { 
} 

}

dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.3.0' compile 'com.android.support:design:23.3.0' compile files('libs/httpclient-4.5.2.jar') compile files('libs/httpcore-4.4.4.jar') compile files('libs/httpmime-4.5.2.jar') compile files('libs/twilio-client-android.jar') compile files('libs/twilio-java-sdk-3.8.0-jar-with-dependencies.jar') }

回答

0

Twilio開發人員傳道士在這裏。

您的問題是您要添加Java庫來嘗試發送SMS消息,並且已知該庫與Apache Android使用的版本衝突。這是一個既不在Android平臺也不在Java庫上的問題,因爲它不是用於Android,而是用於Java項目。

旁白問題所有的是,即使你做了變通方法(如this other developer did但我們認真不建議),以使與Android的Java庫的工作,你就會把你的Twilio的帳戶安全置於危險境地的事實。

這是因爲不建議在應用程序中嵌入您的帳戶SID和身份驗證令牌,因爲攻擊者可能會反編譯應用程序,提取您的憑據並使用您的Twilio帳戶獲取他們喜歡的任何內容。

我們建議創建一個實現Twilio REST API的Web應用程序,爲您的封裝您的憑證發送SMS消息。然後,您可以從您的Android應用程序調用您的Web應用程序併發送SMS,而不必分發您的憑證。

查看tutorials section of Twilio.com瞭解如何在此構建服務器端組件。短信通知上的This tutorial可能是一個好的開始。

希望這可以幫助你,但如果你還有任何問題,請不要猶豫。