1

私はアンドロイドスタジオにそのようなコードを持っています:

@Override
    public void onLocationChanged(AMapLocation amapLocation) {
        if (amapLocation != null && amapLocation.getAMapException() != null
                && amapLocation.getAMapException().getErrorCode() == 0) {
            // get location information
            mLocation = amapLocation;
            MyApp.getInstance().getPrefs().Latitude()
                    .put("" + amapLocation.getLatitude());
            MyApp.getInstance().getPrefs().Longitude()
                    .put("" + amapLocation.getLongitude());
        }

    }

メソッド getAMapException は、Exception から拡張された AMapLocException のインスタンスを返します。

現在、Androidスタジオにはいくつかのヒントが表示されていますが、それらの処理方法がわかりません。 ここに画像の説明を入力

呼び出しの結果が無視され、タイプ (またはサブタイプ) のオブジェクトを返す特定のメソッドへの呼び出しを報告します Throwable。通常、これらのタイプのメソッドは、例外のファクトリ メソッドとして意図されており、結果がスローされる必要があります。

また、GoogleでThrowableResultOfMethodCallIgnored.javaファイルソースを見つけましたが、まだそれを処理する方法がわかりません。

4

1 に答える 1

2

これは単に、Throwable を返すメソッドを呼び出したという警告ですが、実際にはそれをスローしていません。

1つの解決策は、次のことを行うことです

Throwable t = amapLocation.getAMapException();
if (t != null) {
    throw t;
}

もちろん、例外をスローする必要はありません。無視するか、条件付きで使用するかを選択できます。

于 2015-12-31T16:11:02.860 に答える