4

我正在開發android穿戴裝置的表面服務的最後階段。問題如下: 每當我嘗試簽署我的應用程序時,都會生成兩個文件:wear-release.apk和mobile-release.apk,沒有其他apk。不應該apk名稱是我的項目目錄的包名? -因爲我試圖用兼容的智能手機(附有磨損裝置)打開這兩個文件,它總是立即出現短語錯誤。包裝可穿戴應用程序

Thinngs我已經注意到:

  • 有移動版的包Android Studio中沒有內容
  • 的權限在移動清單隻提及(也與權限是兩個艙單試過)
  • 這是一個普通的可配置表面沒有配置活動
  • 我的手機發布apk的方式比磨損apk大,雖然我幾乎沒有放置在移動部分。 ( - >好,也許穿 - APK已經在移動apk中)?
  • 我試圖從SD卡和手機內存安裝apks
  • 我安裝了來自未知來源的apks打開。

感謝您的幫助&時間-Botti560

回答

1

點擊「生成簽名的APK」確保從下拉列表中選擇「移動」模塊。包含磨損和移動模塊的生成的APK將被命名爲「mobile-release.apk」。此外settings.gradle應該有include ':mobile', ':wear'存在,並且的build.gradle(模塊:手機)應該補充

dependencies { 
    wearApp project(':wear') 
} 

編輯更多的內容/澄清如下

確定與此編輯希望我可以幫你解決你的問題!

首先,確保您運行的是Android Studio的最新穩定版本。截至今日,最新版本爲Android Studio 1.1.0 我之前在早期版本中生成簽名APK時出現了一些問題。其次確保你有最新的SDK文件,包括最新的API(API 22)。

一旦你有了這個設置,如果爲你的應用程序生成一個有形的APK仍然不起作用。我會嘗試製作一個新的android項目。將手機的最低SDK設置爲API 18(4。3果凍豆,與Android Wear兼容的最低API級別)。並將Minimum Wear SDK設置爲API 20(Android 4.4 KitKat Wear)。

然後嘗試生成這個新項目的簽名APK而不進行任何更改。這應該工作!如果你仍然有問題,那麼有些事情會被嚴重破壞,我會從頭開始重新安裝Android工作室。

如果這個新項目的確有效,那麼請注意這個工作項目的清單文件和gradle文件與其他非工作項目之間的差異。您發現的任何不一致可能都是您的問題。

最後三個文件:的build.gradle(項目:anAppImade)的build.gradle(Moduble:移動),和的build.gradle(模塊:磨損)應該是這個樣子(分別)這

構建。 gradle這個(項​​目:anAppImade)

buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:1.1.0' 

     // NOTE: Do not place your application dependencies here; they belong 
     // in the individual module build.gradle files 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 
    } 
} 

的build.gradle(Moduble:移動)

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 22 
    buildToolsVersion "22.0.0" 

    defaultConfig { 
     applicationId "com.ppltalkin.anappimade" 
     minSdkVersion 18 
     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']) 
    wearApp project(':wear') 
    compile 'com.android.support:appcompat-v7:22.0.0' 
    compile 'com.google.android.gms:play-services:6.5.87' 
} 

的build.gradle(模塊:磨損)

apply plugin: 'com.android.application' 


android { 
    compileSdkVersion 22 
    buildToolsVersion "22.0.0" 

    defaultConfig { 
     applicationId "com.ppltalkin.anappimade" 
     minSdkVersion 20 
     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.google.android.support:wearable:1.1.0' 
    compile 'com.google.android.gms:play-services-wearable:6.5.87' 
} 
+0

感謝您的快速幫助,但我做到了完全按照你們前面提到的。這個問題是,這兩個文件都生成了,當我只選擇移動安裝。但這可能不重要或不正常。 但我總是得到措辭錯誤:/ – Botti560 2015-03-14 08:45:51

+0

這些是我的移動相關性:依賴關係編譯文件樹(dir:'libs',包括:['* .jar']) wearApp項目(':wear')編譯'com.android.support:appcompat-v7:21.0.3' compile'c​​om.google.android.gms:play-services:6.5.87' compile「com.google.android.support:wearable:1.1 。+「 compile'c​​om.android.support:support-v13:21.0.+' } – Botti560 2015-03-14 08:49:31

+0

我編輯了我原來的帖子,希望它能幫助你! – Benjamin 2015-03-15 04:05:27

2

假設你使用Android工作室:

你移動的build.gradle文件應具有以下依賴性:

dependencies { 
    ... 
    wearApp project(':wear') 
} 

去蓋>生成簽名的apk。在第一個窗口中,選擇手機作爲您的模塊。

現在構建完成後,磨損模塊將自動嵌入到移動模塊中。手機apk是你分發的。磨損可以用於測試。

查看this documentation瞭解更多詳細說明。

+0

的.apk不包埋,我按照您的指示 – JPM 2017-02-22 21:10:39

相關問題