26

アプリケーションの開発と実際の電話でのテストを続けながら、デモンストレーションの目的で、同じ電話にリリースバージョンを用意する必要があります(ログがないため、リリースバージョンの応答性が大幅に向上します)。

問題は、Androidの同じデバイス上で2つのアプリケーションを共存させる唯一の方法は、異なるパッケージ名を使用することです。

しかし、パッケージ名にはリファクタリングと多くの手動修正が必要です...これはバージョン管理を混乱させることは言うまでもありません...

理想的には、Eclipse + ADTは、デバッグ/リリース用に異なるパッケージ名を自動的に生成し、そのような共存を可能にする修飾子変数を追加できるようにしますが、それを可能にするメカニズムは見つかりませんでした。

これを回避する方法を知っていますか?

創造的な解決策やアイデアは大歓迎です。

4

5 に答える 5

20

Android Studio を使用してください。gradle を使用すると作業が大幅に楽になります。使用するだけです。applicationIdSuffix

android {  
   ...  
   buildTypes {  
     release {...}  
     debug {  
       applicationIdSuffix '.debug' 
     }  
   }  
}

詳細については、こちらをご覧ください

于 2015-02-27T08:38:02.010 に答える
2

私が知っている唯一の方法は、アプリケーションのマニフェスト ファイルでパッケージ名を変更することです。Eclipse は、すべてのコードの名前変更を処理する必要があります。

于 2011-09-07T14:43:48.210 に答える
2

すべてのコードをライブラリ プロジェクトに配置してから、パッケージ名が異なる 2 つの通常のプロジェクトを作成し、両方にライブラリ プロジェクトを含めることはできますか?

これにより、すべてのコードが 1 か所に保持されます。通常のプロジェクトでは、ほとんどの場合、ライブラリ プロジェクト内のアクティビティを指す有効なマニフェスト ファイルのみが必要です。

于 2011-09-07T14:51:15.553 に答える
0

@LAS_VEGAS で提案されているように、antJenkins 、およびおそらく他のツールを使用して、パッケージの名前変更を自動化するこの手法を試してみてください。

あなたが求めたものではありませんが、このクールなコード スニペットは、コードがデバッグされているかリリースされているかを実行時に確認するのに役立ちます。

別の興味深いそのような試みは、このスレッドにあります。Androidで動作するかどうかはわかりません。

于 2012-01-26T22:59:44.743 に答える