2013-05-28 31 views
2

你們中的一些人可能知道,使用Crittercism dSYM Plugin可以自動從jenkins上將iOS符號文件(dSYM)上傳到crittercism服務器。是否有任何jenkins插件可用於Android

我正在尋找類似的插件,可以直接從jenkins上傳android proGuard映射文件(「mapping.txt」)到crittercism。

那些誰有一些相關的想法,請分享你的想法。

+0

您是否嘗試過使用現有的插件,但將您的mapping.txt放置在dSYM字段中? –

+0

是的。如預期的那樣。它顯示錯誤:400,無效的dSYM文件 –

+0

好的。這是值得一試的,因爲HockeyApp插件適用於Android,儘管API具有iOS命名參數。您可以相對輕鬆地修改插件以使用兩種操作系統類型。 –

回答

5

您現在可以上傳的mapping.txt自動使用專門爲Android和Android NDK構建的API的文件。

更多信息可以在這裏找到:http://docs.crittercism.com/android/android.html#uploading-the-mapping-txt-file

作爲一個說明,只是再次發現了這個問題,但是這已經出來一段時間了。

+0

聽起來很棒。謝謝您的回答。然而,我現在已經遠離了這個小動物。接受這個沒有驗證的答案。 –

1

我也問過這個問題,以支持這個小組。

首先,我想欣賞他們的及時反應。

根據該郵件,Android符號的自動上傳選項尚不受支持,並且是即將發佈的版本中的目標。

讓從馬的嘴裏聽到的故事:


日期:星期二,2013年5月28日18時13分09秒+0000來源:[email protected] 要:XXX @ XXX。 COM主題:回覆:有沒有 上傳 「的mapping.txt」 任何API的Android應用程序

賽倫德拉嗨,

好聽到你的聲音。對不起,延遲迴復,昨天 是我們的假期,今天早上我只看到了你的消息。

關於mapping.txt文件的自動上傳,恐怕 這是不可能的。我們一直在計劃這個功能 幾個衝刺,但它還沒有包括在內。

我會繼續並將您的意見添加到我們 一直在努力的功能請求中。本週我將推動預定此功能 ,但它可能需要一段時間才能完全準備就緒。

您想讓我們在發佈時通知您嗎?

是否有任何其他功能,可以使你使用Crittercism 更好的體驗?

感謝您的反饋!

耶利米

自2013年5月28日,在下午5時31分賽倫德拉Rajawat 寫道:

Waiting for your response . 
Regards, 
Shailendra 

On May 27, 2013 at 1:57 p.m. Shailendra Rajawat wrote: 

    Hi, 
    Hope you are doing great. 
    i am using cttercism for android and i want to automate the process of uploading proGuard mapping file "mapping.txt" . 
    i am using jenkins -CI and will be delighted if somehow jenkins can send mapping.txt to crittercism server automatically. its 

可能的,只有您提供此類API的。 我開始知道這樣的API可用於iOS dSYM文件上傳。 等待您的回覆。

Regards, 
    Shailendra 
1

之後的小動物doc埃迪提到你可以將curl命令包裝在一個gradle任務中。如果您將新任務設置爲assembleRelease finalizeBy,則每次構建發佈apk時都會上載映射文件。當然你需要自己定義這些變量。

task uploadMapping(type: Exec, dependsOn: 'assembleRelease') { 

    commandLine 'curl', 
      "https://app.crittercism.com/api_beta/proguard/$critterAppId", 
      '-F', '[email protected]/outputs/mapping/release/mapping.txt', 
      '-F', "app_version=$appVersionName-$appVersionCode", 
      '-F', "key=$critterKey" 
} 
assembleRelease.finalizedBy uploadMapping 
1

我的解決方案是工作的罰款。(本地構建和詹金斯建)

對我來說,只有當積累是從詹金斯

請確保您的應用標識,APPKEY和路徑(release_jenkins工作。 ...正常釋放)

的build.gradle(APP)(在末尾)

task uploadPro << { 
    logger.error("Uploading mapping.txt file to crittercism") 
    String temp = projectDir; 
    temp = temp.replace("\\", "/"); 
    String[] cmd = ["curl", "-k", "https://app.crittercism.com/api_beta/proguard/AppIDSting", 
       "-F", "[email protected]" + temp + "/build/outputs/mapping/release_jenkins/mapping.txt", 
       "-F", "app_version=" + VERSION_NAME + '-' + VERSION_CODE, 
       "-F", "key=API_KEY"] 
    logger.error("CMD : " + cmd) 
    ProcessBuilder builder = new ProcessBuilder(cmd); 
    Process process = builder.start(); 
    process.waitFor() 
    println process.err.text 
    println process.text 
    } 

gradle.buildFinished { 
    //check your build type. I am not sure it's the best way to do it. 
    logger.error("JSC : 이름 ! - " + gradle.startParameter.taskNames); 
    if (gradle.startParameter.taskNames.contains("assembleRelease_jenkins")) { 
     logger.error("JSC : 올리기 시작 ! - " + gradle.startParameter.taskNames); 
     tasks.uploadPro.execute() 
    } else { 
     logger.error("JSC : PASS") 
    } 
} 

jenkins console output capture

+0

如果你有麻煩,我做了git項目[鏈接](https://github.com/SinsangMarket/CrittercismMappingTXT) –

相關問題