Androidプロジェクトでターゲットビルドを変更するにはどうすればよいですか?


82

私は現在EclipseにAndroidプロジェクトを持っています。

1.5(sdk 3)のターゲットビルドで作成しました。

ここで、minSdkが3、targetSdkが8になるように変更します。

これを行うには、最新のSDK(2.2)に対してビルドする必要があることがわかります。

Eclipseでこれを行うには、プロジェクトを右クリックし、プロパティに移動し、Androidをクリックして、プロジェクトビルドターゲットをAndroid 2.2に変更し、[適用]、[OK]の順にクリックします。

ただし、これは影響がないようで、再試行すると、ターゲットビルドがAndroid1.5に戻されます。

ステップか何かが足りませんか?

回答:


95

プロジェクトを右クリックし、「プロパティ」をクリックします。次に、左側のツリーから「Android」を選択します。次に、右側でターゲットバージョンを選択できます。

(以下の一般的なコメントに従って、プロパティ、クラスパス、およびプロジェクトファイルが書き込み可能であることを確認してください。書き込み可能でない場合は機能しません)


20
私のプロパティ、クラスパス、およびプロジェクトファイルが書き込み不可として設定されていたことが判明したため、機能しませんでした。現在は機能しています。ありがとう
Donal Rafferty 2010

3
私はこれと同じ問題にぶつかった。ソース管理により、ファイルが書き込み可能でなくなり、切り替えが妨げられました。問題があるという警告や表示は表示されません...切り替えられないだけです。他の人がこれに遭遇した場合は、「編集のためにチェックアウト」するか、ソース管理ライブラリに適切なアクションがあることを確認してください。
Michael Stoner

DEFAULTオプションを設定する方法はありますか?複数のAPKがあるため、毎回これを設定する必要があります...
MBillau 2013年

@DonalRafferty書き込み可能かどうかを確認する方法は?そしてそれらを書き込み可能にする方法は?
ムハンマドババール2014

@MuhammadBabarファイルを自動的に読み取り専用にするVisualSourceSafeを使用していました。ファイルの[読み取り専用]チェックボックスをオフにしました。当時はWindowsマシンを使用していました。
Donal Rafferty 2014

24
  1. プロジェクトのビルドターゲットはいつでも変更できます。

    パッケージエクスプローラーでプロジェクトを右クリックし、[プロパティ]、[Android]の順に選択して、目的のプロジェクトターゲットを確認します。

  2. AndroidManifest.xmlファイル(プロジェクトのルートディレクトリにあります)で次の要素を編集します

    この場合、次のようになります。

    <uses-sdk android:minSdkVersion="3" />
    <uses-sdk android:targetSdkVersion="8" />
    

    それを保存

  3. プロジェクトを再構築します。

    メニューバーの[プロジェクト]をクリックし、[クリーン...]を選択します。

  4. ここで、プロジェクトを再度実行します。

    プロジェクト名を右クリックし、[別のユーザーとして実行]に移動して、[Androidアプリケーション]を選択します

ちなみに、ADTを使用したEclipseからのプロジェクトの管理を確認すると役立ちます。特にAndroidプロジェクトの作成と呼ばれる部分。


5
ヒント:このすべての手順を実行した後、Eclipseを再起動します。これは不思議に思うことができます。
cimnine 2011

同意しました!Eclipseを再起動するまで、これを機能させることはできませんでした。
ペドロ

Android Studioでは、これらの行をマージする必要がありました。これがAndroidStudioに固有のものであるかどうか、またはこれが投稿されてからマニフェスト形式の変更が必要かどうかはわかりません。例: <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="21" />
Eric Farraro 2014年

@Alan私は密集していますが、いったいどこでその最初のポイントをクリックしますか...パッケージエクスプローラー...どこにもプロパティが表示されません!:-(
ダリウス

11

antを使用している場合のコマンドラインでのもう1つの方法は、android.batスクリプト(Windows)またはandroidスクリプト(Mac)を使用することです。$ SDK_DIR / toolsにあります。

あなたが言うなら、

android.bat update project --path .  --target "android-8"

build.xml、AndroidManifest.xmlなどが再生成されます。


6

この問題を解決するには3つの方法があります。

  1. プロジェクトを右クリックし、「プロパティ」をクリックします。次に、左から「Android」を選択します。次に、右側からターゲットバージョンを選択できます。

  2. プロジェクトを右クリックして「名前を付けて実行」を選択すると、ドロップダウンリストが開きます。
    ドロップダウンリストから[構成の実行]を選択します。フォームが開きます。[フォーム]から[ターゲット]タブを選択し、アプリケーションを実行するAndroidバージョンApiを選択します。これは、アプリケーションを確認するための最速の方法です。異なるターゲットバージョンのアプリケーション。

  3. AndroidManifest.xmlファイルの次の要素を編集します

xml:

<uses-sdk android:minSdkVersion="3" />
<uses-sdk android:targetSdkVersion="8" />

3

Eclipseでそれを行う方法についてRyanConradに同意しますが、manifest.xmlを変更したことを確認しましたか?

 <uses-sdk android:minSdkVersion="3" />
 <uses-sdk android:targetSdkVersion="8" />

3

プロジェクトにエラーがあると、問題が発生することがあります。

たとえば、プロジェクトが3.2のターゲットで構成されているが、3.2ライブラリが利用できない場合、バージョンを4.0に変更することはできません。

私が使用する通常の(おそらく残忍な)解決策は、正しいターゲットで新しいプロジェクトを作成し、src、res、manifestを新しいプロジェクトにコピーすることです。

更新:

これはうまくいくようです:

  1. 通常どおり、ビルドプロパティで選択したものを変更します
  2. project.propertiesとdefault.propertiesを手動で編集して、両方が目的のターゲットを反映していることを確認します。
  3. プロジェクトを閉じて、再度開きます

私はいつもAndroidツールを実行しています| ビルドターゲットに変更を加えた後、プロジェクトのプロパティを修正します。


3

ファイルdefault.propertiesはデフォルトで読み取り専用であり、変更するとうまくいきました。


2

ファイルに複数の「uses-sdk」タグを含めないでください。ref-ドキュメント

Use this syntax:
    <uses-sdk android:minSdkVersion="integer"
          android:targetSdkVersion="integer"
          android:maxSdkVersion="integer" />

1

私もこの問題を抱えていました。私にとってうまくいったのは、新しい目的のバージョンをチェックする前に、最初に以前に選択したSDKバージョンのチェックを外すことでした。次に、[OK]をクリックします。


1

マイクの方法が言うように。android:installLocation = "auto"のようなより高いターゲットを必要とするプロジェクトで何かを行う前に、ターゲットを変更してください。


0

プロジェクトを右クリック->プロパティ->アンドロイド->ターゲット名を選択-ターゲットを設定-[OK]をクリックします


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.