27

Eclipseには2つのAndroidプロジェクトがあります。一方のプロジェクトをもう一方のプロジェクトからコピーしてから、アプリ名(strings.xml内)とプロジェクト名(Eclipse内)を変更しました。

しかし、今は問題があります。エミュレータでいずれかのアプリケーションを実行すると、もう一方のアプリケーションが失われます(おそらく上書きされますか?)。では、Androidが2つのアプリを異なるものとして認識するように、別の設定を行う必要があると思いますか?

ありがとう!

4

11 に答える 11

15

実際には、いくつかの場所で名前を変更する必要があります:

まず、あなたが言ったように、アプリケーションの目に見える名前である文字列の名前。

次に、 activity->src に移動し、パッケージ (com.example.whatever) を右クリックして、refactor->rename; を実行します。

次に、manifest.xml: に移動し、次のフィールドを変更します。

<manifest package="com.example.whatever" >

ネイティブ コードの JNI を使用している場合は、C++ 関数の名前も変更する必要があります。これは厄介な作業です。

Java_com_example_whatever_activity_function()
于 2013-11-29T11:06:34.197 に答える
14

Android Studio を使用しておらず、手動で実行したい場合 (たとえば、React Native を使用している場合) のために、私は最近これを実行し、次のファイルで変更する必要がありました。

index.android.js
android/settings.gradle
android/app/build.gradle
android/app/src/main/AndroidManifest.xml
android/app/src/main/java/com/<app id>/MainActivity.java
android/app/src/main/java/com/<app id>/MainApplication.java
于 2017-01-10T16:43:42.537 に答える
13

パッケージ名(Java)。

アプリ名もマニフェストに含まれていますが、一意である必要はないと思いますが、わかりやすくするために変更することをお勧めします。

于 2011-07-03T16:03:07.833 に答える
8

このタスクを達成するために私が見つけた最も簡単な方法は、.gradle で製品フレーバーを利用することです

productFlavors {
    MainApp {
        applicationId = "com.company.app"
    }
    NewAppFlavor {
        applicationId = "com.company.newapp"
    }
}

buildTypes {
    debug {
        buildConfigField "java.util.Date", "buildTime", "new java.util.Date(" +  getDateAsMillis() + "L)"
        applicationIdSuffix ".debug"
    }
}

次に、AndroidManifest.xml でパッケージ名を次のように指定します。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.company"
   android:versionCode="1"
   android:versionName="0.1.1" >

リリース構成時に、Android Studio (この記事の執筆時点では 1.5.1) はビルドするフレーバーを尋ねます。

デバッグ構成は少し直感的ではありません。画面の左下隅にカーソルを置き、[ビルド バリアント] を選択して、再生ボタンを押したときにデバッグ構成をデプロイするフレーバーを選択する必要があります。

于 2016-02-14T06:43:31.883 に答える
3

私のセットアップ

  • アンドロイドスタジオ 3.5.3
  • コトリン 1.3.x
  • macOS 10.14.6

appid の名前変更の解決策

  • プロジェクト エクスプローラーで、 を見つけますapp/java/com.company.app
  • > を右クリックRefactor > Renameし、 を選択しますRename Package
  • Refactoring Preview を見て、すべてのパッケージ参照が選択されていることを確認します。
  • をクリックしDo Refactorます。

手でハックする必要はありません。

于 2019-12-27T02:57:37.207 に答える
1

アプリケーションの一意の識別子はパッケージ名です。パッケージ名を変更してアプリを再インストールすると、携帯電話に 2 つのコピーが残ることになります。

Eclipse は、コードのすべての場所で自動的に変更できます。

パッケージ エクスプローラー (プロジェクト ツリー) でプロジェクトを右クリックし、[Android ツール] -> [アプリケーション パッケージの名前を変更] に移動します。

ほら。

于 2014-08-06T11:24:16.637 に答える