web-dev-qa-db-ja.com

Android St​​udio 1.0およびエラー「ライブラリプロジェクトはapplicationIdを設定できません」

Android St​​udioを1.0に更新すると、次のエラーが表示されます。

エラー:ライブラリプロジェクトはapplicationIdを設定できません。applicationIdが設定されていますデフォルト設定の「com.super.app」へ

提案どおりにGradleプラグインを更新しましたが、これを修正する方法がわかりませんでした。

106
Seraphim's

これに基づいて info

ライブラリプロジェクトのApplicationId

ApplicationIdを使用して、ライブラリプロジェクトのパッケージをカスタマイズすることはできません。パッケージ名は、ライブラリプロジェクトで修正する必要があります(およびマニフェストでpackageNameとして指定されます)。 Gradleプラグインは、以前にこの制限を強制しませんでした。

ライブラリのbuild.gradleファイルからapplicationId変数を削除すると、問題が解決するはずです。

204
Joel

ジョエルの正しい答えに感謝: te .gradleファイルから1行だけ削除する必要があります:

defaultConfig {
        applicationId "com.super.app"   <---- remove this line
        minSdkVersion 15
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }

になる

defaultConfig {
        minSdkVersion 15
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }

androidManifest.xml

 <manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
        xmlns:tools="http://schemas.Android.com/tools"
        package="com.super.app">
...

これは、アプリのパッケージ名を変更する必要がない場合に適切なソリューションです。名前を変更するには、「フレーバー」を使用する必要があります。

Android {
   ...
   productFlavors {
       flavor1 {
           applicationId 'com.super.superapp'
       }
   }
60
Seraphim's

ちょうどそれが何かを助けることを包み込んでください:

EclipseプロジェクトをAndroid studioにインポートすると、エラーが発生しました::

"エラー:アプリケーションIDとテストアプリケーションIDを同じにすることはできません"

奇妙なことですが、build.gradleを調べて、アプリケーション用とテストアプリケーション用の2つのプレースホルダーを見つけました。

この投稿で提案されているように、そこからtestApplicationIdを削除しました。これは問題の解決に役立ちました。

注:この説明は、この質問に投稿されたエラーとは関係ありませんが、同様のエラーが発生している人の助けになる可能性があります。

1
Kunal Khaire

LibのapplicationIdを定義できません。ただし、ビルドファイルで識別子を使用する場合(ライブラリパッケージ名を提供する場合)、モジュールの変数を定義し、必要に応じて値を使用できます。

例:ライブラリのbuild.gradle

apply plugin: 'com.Android.library'

def libraryGroupId = 'com.google.example'
def libraryArtifactId = project.getName()
def libraryVersion = '1.1'

また、必要に応じてlibのビルドファイル自体で以下の値を使用できます。

Android {
compileSdkVersion 28

defaultConfig {
    minSdkVersion 21
    targetSdkVersion 28
    versionCode 1
    versionName "$libraryVersion"
    resValue "string", "Library", libraryGroupId"
 }
}
0
Mayuri K

ApplicationId行を削除しようとしました。ただし、他のエラーがスローされます。

失敗:ビルドは例外で失敗しました。

  • 問題点:プロジェクト ':app'の構成で問題が発生しました。

    構成 ':app:_debugApkCopy'のすべての依存関係を解決できませんでした。 com.bst.material-dialogs:core:0.9.0.2が見つかりませんでした。必須:polar-dashboard-master:app:unspecified com.bst:drag-select-recyclerview:0.3.6が見つかりませんでした。必須:polar-dashboard-master:app:unspecified com.bst:bridge:3.2.5が見つかりませんでした。必須:polar-dashboard-master:app:unspecified com.bst:sectioned-recyclerview:0.2.3が見つかりませんでした。必須:polar-dashboard-master:app:unspecified com.bst:assent:0.2.5が見つかりませんでした。必須:polar-dashboard-master:app:unspecified com.bst:icon-request:1.5.2が見つかりませんでした。必須:polar-dashboard-master:app:unspecified com.bst:inquiry:3.2.1が見つかりませんでした。必須:polar-dashboard-master:app:unspecified

  • 試す:--stacktraceオプションを指定して実行し、スタックトレースを取得します。より多くのログ出力を取得するには、-infoまたは--debugオプションを使用して実行します。

0