30

Eclipse が Android プロジェクトのビルドを拒否します。パッケージ エクスプローラーでは、プロジェクト ルート ノードに小さな赤いエラー シンボルがありますが、その内部にはこのシンボルはありません。[問題] タブには、Lint によって検出されたエラーが表示されます。

Call requires API level 3 (current min is 1): android.os.AsyncTask#<init>   
Call requires API level 3 (current min is 1): android.view.GestureDetector#<init>   
Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#hideSoftInputFromWindow   
Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#hideSoftInputFromWindow   
Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#showSoftInput
Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#showSoftInput
Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#showSoftInput
Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#toggleSoftInput
Call requires API level 3 (current min is 1): android.view.Menu#getItem 
Call requires API level 3 (current min is 1): android.view.Menu#getItem 
Call requires API level 3 (current min is 1): android.widget.HorizontalScrollView#getId 
Call requires API level 5 (current min is 1): android.app.Activity#onBackPressed    
Call requires API level 5 (current min is 1): android.app.Activity#onBackPressed    
Call requires API level 5 (current min is 1): android.app.Activity#onBackPressed    
Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager  
Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager  
Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager
Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager  
Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager  
Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager
Class requires API level 3 (current min is 1): android.widget.HorizontalScrollView
Class requires API level 3 (current min is 1): android.widget.HorizontalScrollView
Field requires API level 3 (current min is 1): android.os.Build#DISPLAY
Field requires API level 4 (current min is 1): android.content.res.Configuration#screenLayout   
Field requires API level 4 (current min is 1): android.os.Build#CPU_ABI 
Field requires API level 4 (current min is 1): android.os.Build#MANUFACTURER
Field requires API level 4 (current min is 1): android.os.Build$VERSION#SDK_INT

私の推測では、Lint は私の minSdkVersion が 1 であると考えていますが、そうではありません。私のマニフェストは宣言しminSdkVersion="8"ます。これを修正するために、次のことを試しました。

  • Eclipse の再起動
  • コンピューターの再起動
  • プロジェクト > クリーン
  • 手動で削除/bin/genて強制的に裾を再生成する

この時点で、私はアイデアがありません。誰にも提案がありますか?

4

5 に答える 5

76

私は同じ問題を抱えています、そして私の解決策は:

プロジェクトフォルダを右クリック>Androidツール>Lintマーカーをクリア

「AndroidLintを実行」はいくつかのマーカーを作成し、マーカーがこのエラーを引き起こします。

于 2012-04-26T09:19:49.647 に答える
16

Accepted Answer の「Clear Lint Markers」で一時的にエラーが解消されましたが、影響を受けるプロジェクトでファイルを保存するたびにエラーが発生し続けました。

そのエラーの報告を停止するには、lint チェックを完全に無効にする必要がありました。

Right click project -> Properties -> Android Lint Preferences

Search for "minSdk" in the search box

Click on "UsesMinSdkAttributes"

Click the "Ignore All" button at the bottom.

プロジェクトをクリーンアップして再構築すると、Eclipse/ADT はプロジェクトで minSdk の lint チェックを実行しなくなります。

于 2013-03-19T00:27:42.247 に答える
6

android:名前空間識別子とminSdkVersion属性があることを確認してください。このような:

android:minSdkVersion="8".

一部の Android サンプル プロジェクト (BluetoothChat など) に基づいてプロジェクトを作成すると、名前空間が省略され、Lint が混乱します。次に、Lint マーカーをクリアしても、Lint を再度実行した後に再び表示されるため、問題が完全に解決されるわけではありません。これはかなり頻繁に自動的に発生します。

注: これは、API16 のサンプル リビジョン 1 で検証されました。

于 2013-01-22T15:35:04.793 に答える
2

プロジェクト フォルダー > Android ツール > プロパティの修正を右クリックしてみてください。

また、すべての Android ライブラリとものがチェックされ、正しい順序で読み込まれていることをビルド プロパティで確認する必要があります。プロジェクトを右クリック > プロパティ > ビルド

于 2012-04-25T19:59:04.117 に答える
2

シンプルなプロジェクト - >クリーンでも問題が修正されました。

于 2012-12-09T20:28:52.070 に答える