既にインストールされているアプリケーションをデバッグしようとすると、上記のエラーメッセージが表示されます。これを実行するほとんどの人は、異なるキーファイルを持つ異なるマシン上で開発しているようですが、私は同じボックスですべてをやっています。異なるアプリケーションシグネチャのため再インストールに失敗しました
私の問題は、データベースのアップグレードプロセス(つまり、SQLiteOpenHelper拡張機能のonUpgrade()メソッドが何をするか)をテストしていることです。このため、私は古いビルドの様々な上でアップグレードを試してみたいと思います。これらのビルドは、署名されたアプリケーションパッケージとして利用できます。このようなパッケージを新しいエミュレータにデプロイして、現在のバージョンを上にデバッグしようとすると、件名にエラーが表示されます。これは、デバッグ展開パッケージには署名がなく、現在インストールされているパッケージに署名が付けられているためです。繰り返しますが、現在インストールされているアプリケーションをアンインストールするとエラーが消えてしまいますが、アップグレードをテストできません。
私の開発環境を古いビルドバージョンに戻したくないので、これらのバージョンの未署名パッケージをビルドすることができます。私はこれを行うことさえできないかもしれません。なぜなら私は最近ソースコードリポジトリを切り替えていくつかの歴史を失ったからです。
デバッグ用の署名付きのパッケージを生成するためにEclipseを入手できたら、それはうまくいくはずです。また、署名されたパッケージを手動でデプロイして、ビルド/デプロイメントの手順を行わずにデバッグセッションを開始することもできますが、これが可能かどうかはわかりませんでした。私に何ができる?
編集:Android documentationは、デバッグキーでパッケージに署名する方法を理解するのに役立ちましたが、プライベートキーでデバッグする必要があるため、これは役に立ちません。これは不可能だと思います。
あなたは1人の署名を使用して、それらすべてを生成する必要があります - それ以外の場合文句を言わない仕事。アンインストールと新規インストールは、異なるシグネチャで動作します。 http://developer.android.com/guide/publishing/app-signing.html –