質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.48%

  • C#

    7416questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • Xamarin

    518questions

    Xamarin(ザマリン)は、iPhoneなどのiOSやAndroidで動作し、C# 言語を用いてアプリを開発できるクロスプラットフォーム開発環境です。Xamarin Studioと C# 言語を用いて、 iOS と Android の両方の開発を行うことができます。

  • Bluetooth

    238questions

    Bluetoothとは短距離の間でデータを交換するための無線通信規格である。固定・モバイル両方のデバイスから、短波の電波送信を行うことで、高いセキュリティをもつパーソナルエリアネットワーク(PAN)を構築する。

Xamarin.FormsでBluetooth1.2と通信できる?

解決済

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 411

naritamago

score 7

はじめまして。
現在、Xamarin.FormsでAndroid/iOS対応のアプリを作成しようとしております(Prism for Xamarin.Formsを使用)。
Bluetooth通信によりデバイスからデータを取得したいです。
Plugin.BLEなど、BLE対応デバイスであればサンプルは沢山見つかるのですが、
デバイス自体のBluetoothのversionが1.2と古く、どのように実装すれば良いか・そもそも実装できるのか分からない状態です。
開発前は「Xamarin(C#)だけでコーディングできなくてもネイティブのコード書けば行けるっしょ」とタカをくくっていたのですが、Xamarinの学習を進めるうちに「Prism?DI?ネイティブのコードってどう書けばいいんだ?」とわからなくなってきてしまいました。

 前提・実現したいこと

アドバタイズ状態(BLEではないので適切な用語かわかりませんが)のデバイスの検出だけでもいいので、Xamarin.Forms(Prism)プロジェクトのどこにどういった処理を書けばよいのか教えていただきたいです。何卒よろしくお願いしますm(_ _)m

 補足情報(FW/ツールのバージョンなど)

接続したいデバイスのカタログスペックは以下になります。

  • Bluetoothバージョン:1.2
  • 送信方式:AFH
  • 変調方式:GFSK
  • 無線出力:4dBm
  • 送信電力クラス:Class2
  • プロファイル:SPP

当方の開発環境は以下になります。

  • VisualStudio2017 CommunityEdition
  • Prism for Xamarin.Forms 7.0.0
  • Nugetで色々入れるのは可能
  • Xamarinは初学者です。
  • Bluetoothについても最近用語を覚えました。
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • naritamago

    2018/07/02 19:30

    amay077さん、Windさん、コメントありがとうございます。とりあえず頂いたアドバイス参考に試してみて、質問の状況もアップデートしていきたいと思います。

    キャンセル

  • Jirobe

    2018/07/12 10:31 編集

    iOSってSPPは未対応ではないでしょうか。少なくとも下には無いように思います。 [iOS:iOS デバイス対応の Bluetooth プロファイル]https://support.apple.com/ja-jp/HT204387

    キャンセル

  • naritamago

    2018/07/24 15:58

    Jirobeさん、せっかくコメントいただいたのに返信遅くなってすみません。SPPというかClassic Bluetoothに対応してないのは知ってるんですが、ExternalAccessoryフレームワークを使ってなんとかならんかと今苦戦中です。

    キャンセル

回答 1

check解決した方法

0

質問してから凄く時間が経ってしまいましたが、結論から言うとXamarin.FormsのアプリでAndroidとBluetooth1.2のデバイスで通信を行うことができました。
https://teratail.com/questions/145850

iOSの方は、MFi認証を取得する必要があるため、個人では無理と判断し、断念しまました。

今見返すととんでもなく厚顔無恥な質問をしていて恥ずかしい限りですが、
teratailで何度か質問しては答えていただき、完成までこぎつけられました。
ご助力いただいた皆様に感謝いたします。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

関連した質問

同じタグがついた質問を見る

  • C#

    7416questions

    C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

  • Xamarin

    518questions

    Xamarin(ザマリン)は、iPhoneなどのiOSやAndroidで動作し、C# 言語を用いてアプリを開発できるクロスプラットフォーム開発環境です。Xamarin Studioと C# 言語を用いて、 iOS と Android の両方の開発を行うことができます。

  • Bluetooth

    238questions

    Bluetoothとは短距離の間でデータを交換するための無線通信規格である。固定・モバイル両方のデバイスから、短波の電波送信を行うことで、高いセキュリティをもつパーソナルエリアネットワーク(PAN)を構築する。