特定の接続がサポートされているかどうかを判断しようとして、 CoverageInfo.getCoverageStatus()とCoverageInfo.isCoverageSufficient( )の違いについて混乱しています。例えば:
// check mds with getCoverageStatus() and bitwise check
boolean hasMdsCoverage1 = (CoverageInfo.getCoverageStatus() & CoverageInfo.COVERAGE_MDS) == CoverageInfo.COVERAGE_MDS;
// check mds with isCoverageSufficient()
boolean hasMdsCoverage2 = CoverageInfo.isCoverageSufficient(CoverageInfo.COVERAGE_MDS);
hasMdsCoverage1とhasMdsCoverage2はどちらも同じ結果を返すように見えますが、なぜ 2 つの異なるアプローチがあるのでしょうか? 別の結果を返す場合はありますか?
理想的には、 CoverageInfo.isCoverageSufficent()を使用したいと考えています。これは、コードがよりきれいに見えるためですが、そうする前に、 getCoverageStatus()が提供するものを見逃していないことを確認したいと考えています。
注: これを使用して、BIS、MDS、WAP、および WAP2 プロトコルを介した有効な接続を確認しています。