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

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

新規登録して質問してみよう
ただいま回答率
85.35%
C#

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

Q&A

解決済

1回答

3304閲覧

iBeaconのデータをBLEで取得するプログラムをC#で書きたいです。

23xtrail

総合スコア1

C#

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

1グッド

0クリップ

投稿2021/10/14 07:57

編集2021/10/14 08:25

iBeaconのデータをBLEで取得するプログラムをC#で書きたいのですが

https://qiita.com/gebo/items/469dd49ddd1e24ce7a42#comment-08c9f66e142b02d7c8b0
こちらのサイトを参考にさせていただきました。
サイトを書かれている方にも質問させていただいているのですが、あまり更新されておられないようですのでこちらにもしつもんさせていただいております。
iBeaconとtextBoxのにCS1061とCS0246のエラーが発生します。
解決方法のわかる方がいらっしゃれば教えてください。
環境は以下のような感じです。

Visual Studio 2015
C#
.Net Framework 4.6.1
WPFアプリケーション

発生している問題・エラーメッセージ

CS1061
'iBeaconScanner' に 'textBox' の定義が含まれておらず、型 'iBeaconScanner' の最初の引数を受け付けるアクセス可能な拡張メソッド 'textBox' が見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足していないことを確認してください

CS0246
型または名前空間の名前 'iBeacon' が見つかりませんでした (using ディレクティブまたはアセンブリ参照が指定されていることを確認してください)

エラーメッセージ

該当のソースコード

C#です
iBeacon bcon = new iBeacon(args);

this.textBox.Text = this.textBox.Text + timestamp.ToString("HH:mm:ss.fff") + ":" + retBeaconData + "\r\n";

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using Windows.Devices.Bluetooth.Advertisement; using System.Diagnostics; namespace iBeaconScanner { /// <summary> /// MainWindow.xaml の相互作用ロジック /// </summary> public partial class iBeaconScanner : Window { private BluetoothLEAdvertisementWatcher advWatcher; private async void Watcher_Received(BluetoothLEAdvertisementWatcher sender, BluetoothLEAdvertisementReceivedEventArgs args) { await this.Dispatcher.InvokeAsync(() => { // ここで処理 iBeacon bcon = new iBeacon(args); if (bcon.UUID != null) { // iBeacon DateTimeOffset timestamp = args.Timestamp; string retBeaconData; retBeaconData = "{"; retBeaconData += string.Format("uuid:'{0}',", bcon.UUID);//"00000000-0000-0000-0000-000000000000" retBeaconData += string.Format("major:{0},", bcon.Major.ToString("D")); retBeaconData += string.Format("minor:{0},", bcon.Minor.ToString("D")); retBeaconData += string.Format("measuredPower:{0},", bcon.MeasuredPower.ToString("D")); retBeaconData += string.Format("rssi:{0},", bcon.Rssi.ToString("D")); retBeaconData += string.Format("accuracy:{0},", bcon.Accuracy.ToString("F6")); retBeaconData += string.Format("proximity:'{0}'", bcon.Proximity); retBeaconData += "}"; this.textBox.Text = this.textBox.Text + timestamp.ToString("HH\:mm\:ss\.fff") + ":" + retBeaconData + "\r\n"; } }); } public iBeaconScanner() { InitializeComponent(); this.advWatcher = new BluetoothLEAdvertisementWatcher(); this.advWatcher.SignalStrengthFilter.SamplingInterval = TimeSpan.FromMilliseconds(10); this.advWatcher.Received += this.Watcher_Received; this.advWatcher.Start(); } } }

試したこと

ここに問題に対して試したことを記載してください。

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

ここにより詳細な情報を記載してください。

TN8001👍を押しています

気になる質問をクリップする

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dodox86

2021/10/14 08:04

当該記事のコメント欄で記事の主様に質問されているのですから、マルチポストは止めましょう。 [他のサービスにも質問投稿をしたい(してしまった)] https://teratail.com/help#posted-otherservice あくまで非推奨であって禁止ではありませんが、マルチポストをされている時点で回答しようと思う方は激減します。
23xtrail

2021/10/14 08:12

失礼しました 訂正します
dodox86

2021/10/14 08:17

[2021/10/14 17:13]の質問編集を読んで: いやいや、リンクされていたQiitaの記事のコードを全面的に参考にされたのですよね。参照元リンクを削除してどうするのでしょうか。それは、質問内容の改悪です。
23xtrail

2021/10/14 08:26

すみません 初心者でよくわからないのですがこの訂正でよろしいでしょうか?
dodox86

2021/10/14 08:38

> 初心者でよくわからないのですがこの訂正でよろしいでしょうか? うーん、まぁ、良いのではないでしょうか。マルチポストは、基本的にそれをした者の勝手な自己都合です。teratailでも頻繁に挙がる話題ですので、トップページで「マルチポスト」で検索してみてください。 大きく参考にされたり元記事からコピー&ペーストをしてコードを作成し、それに対する質問などをする場合、その記事の参照元を提示するのは元記事の主様に対する最低限の"礼儀"ですし一般的な"マナー"です。誰でも自分の知らないところで勝手に参照されて「動かない」なんて言われたら良い気はしませんし、怒りますよね。teratailに限りません。 [質問するときのヒント] https://teratail.com/help/question-tips [推奨していない質問] https://teratail.com/help/avoid-asking
23xtrail

2021/10/14 08:46

分かりました 気をつけさせていただきます。 ご指摘ありがとうございます!
guest

回答1

0

ベストアンサー

textBoxはxamlで定義されています。
iBeaconは記事では触れられてないですが、独自定義したクラスです。

記事にもGitHubのリンクが書いてありますが、「詳しくはソースを見てね」ということでしょう。
gebogebogebo/iBeaconScanner: Windows10 Desktop App

Codeという緑色のボタンからソースコードをZipでダウンロードできます。
github download - Google 検索

で、こちらの手元では実行はできました(デバイスがないので動作確認はできません)

投稿2021/10/14 09:33

TN8001

総合スコア9862

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

23xtrail

2021/10/14 10:20

ありがとうございます!! とても助かりました!! 明日学校で試させていただきます
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問