91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Android中調用紅外線遙控功能

發布時間:2021-03-10 14:59:25 來源:億速云 閱讀:841 作者:Leah 欄目:移動開發

怎么在Android中調用紅外線遙控功能?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

具體如下:

public class ConsumerIrActivity extends Activity {
  private static final String TAG = "ConsumerIrTest";
  private TextView mFreqsText;
  // Android4.4之后 紅外遙控ConsumerIrManager,可以被小米4調用
  private ConsumerIrManager mCIR;
  @SuppressLint("InlinedApi")
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.consumer_ir);
    // 獲取系統的紅外遙控服務
    mCIR = (ConsumerIrManager) getSystemService(Context.CONSUMER_IR_SERVICE);
    initViewsAndEvents();
  }
  private void initViewsAndEvents() {
    findViewById(R.id.send_button).setOnClickListener(mSendClickListener);
    findViewById(R.id.get_freqs_button)
        .setOnClickListener(mOnClickListener);
    mFreqsText = (TextView) findViewById(R.id.freqs_text);
  }
  View.OnClickListener mSendClickListener = new View.OnClickListener() {
    @TargetApi(Build.VERSION_CODES.KITKAT)
    public void onClick(View v) {
      if (!mCIR.hasIrEmitter()) {
        Log.e(TAG, "未找到紅外發身器!");
        return;
      }
      // 一種交替的載波序列模式,通過毫秒測量
      int[] pattern = { 1901, 4453, 625, 1614, 625, 1588, 625, 1614, 625,
          442, 625, 442, 625, 468, 625, 442, 625, 494, 572, 1614,
          625, 1588, 625, 1614, 625, 494, 572, 442, 651, 442, 625,
          442, 625, 442, 625, 1614, 625, 1588, 651, 1588, 625, 442,
          625, 494, 598, 442, 625, 442, 625, 520, 572, 442, 625, 442,
          625, 442, 651, 1588, 625, 1614, 625, 1588, 625, 1614, 625,
          1588, 625, 48958 };
      // 在38.4KHz條件下進行模式轉換
      mCIR.transmit(38400, pattern);
    }
  };
  @SuppressLint("NewApi")
  View.OnClickListener mOnClickListener = new View.OnClickListener() {
    public void onClick(View v) {
      StringBuilder b = new StringBuilder();
      if (!mCIR.hasIrEmitter()) {
        mFreqsText.setText("未找到紅外發身器!");
        return;
      }
      // 獲得可用的載波頻率范圍
      ConsumerIrManager.CarrierFrequencyRange[] freqs = mCIR
          .getCarrierFrequencies();
      b.append("IR Carrier Frequencies:\n");// 紅外載波頻率
      // 邊里獲取頻率段
      for (ConsumerIrManager.CarrierFrequencyRange range : freqs) {
        b.append(String.format("  %d - %d\n",
            range.getMinFrequency(), range.getMaxFrequency()));
      }
      mFreqsText.setText(b.toString());// 顯示結果
    }
  };
}
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical" >
<Button
    android:id="@+id/send_button"
    android:text="@string/ir_send"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>
  <Button
    android:id="@+id/get_freqs_button"
    android:text="@string/ir_get_freqs"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>
  <ScrollView
    android:id="@+id/freqs_text_scroll"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1" >
    <TextView
      android:id="@+id/freqs_text"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:paddingLeft="3dp"
      android:paddingRight="3dp" />
  </ScrollView>
</LinearLayout>

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

广灵县| 麻城市| 瑞金市| 正阳县| 雅安市| 泗洪县| 玛纳斯县| 长泰县| 湘西| 太原市| 若尔盖县| 平原县| 保康县| 博湖县| 英德市| 乌拉特前旗| 长治县| 和龙市| 潮安县| 平远县| 武穴市| 绥宁县| 明水县| 天气| 金塔县| 万源市| 建瓯市| 文安县| 教育| 广水市| 敖汉旗| 北流市| 海淀区| 平远县| 定襄县| 黄平县| 东海县| 南丹县| 常德市| 汾西县| 铜川市|