3

古いデバイスで NoSuchMethodException がクラッシュすることがありましたが、古いデバイスではまだサポートされていないメソッドを使用しているという警告が Eclipse IDE から出されないのはなぜでしょうか。AndroidManifest.xml に minSDKVersion フィールドが正しく設定されています。minSdkVersion デバイスで実行できないメソッドを使用すると、コンパイル エラーまたは少なくとも警告が発生することはありますか?

AndroidManifest.xml に次のものがあります

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

この巨大なアプリのすべての画面と機能を古いデバイスでテストする必要はありません。

ありがとう!

4

2 に答える 2

2

NewApi と InlineApi の Lint チェックをエラーに設定します。

right click project --> Properties --> Android Lint Preferences.   

ボックスを見つけNewApiて、 [エラー] または [致命的] にInlineApi設定します。Severity

于 2013-04-19T04:08:12.420 に答える
1

リントを使用できます。Android Lint は、ADT 16 (および Tools 16) で導入された新しいツールで、Android プロジェクト ソースをスキャンして潜在的なバグを探します。これは、コマンド ライン ツールとしても、Eclipse との統合でも利用できます。

minSdkVersion で実行できないメソッドを使用すると、リントはそのメソッドを使用できないことを叫びます。

http://developer.android.com/tools/help/lint.html

日食での使用

http://tools.android.com/recent/neweclipselintui

提供されるチェックのリスト

http://tools.android.com/tips/lint-checks

カスタム lint ルールの作成

http://tools.android.com/tips/lint-custom-rules

UsesMinSdkAttributes

概要: 最小 SDK とターゲット SDK 属性が定義されていることを確認します

優先度: 9 / 10 重大度: 警告 カテゴリ: 正しさ

マニフェストには、アプリケーションの実行に必要な最低限の API レベルと、ターゲット バージョン (バージョンをテストした最高の API レベル) を定義する要素を含める必要があります。

詳細: http://developer.android.com/guide/topics/manifest/uses-sdk-element.html

于 2013-04-19T04:18:03.143 に答える