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

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

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

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

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

1677閲覧

iBeaconのRSSIやAccuracyなどを取得できない

wing

総合スコア20

C#

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

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2021/07/10 07:33

前提・実現したいこと

Unityの有料アセット「iBeacon」を利用して、Android端末でiBeaconの「RSSI」、「Range」、「Strength(TXPower)」、「Accuracy(距離)」を取得したいと考えております。
()の中身がアセットではなっていました。

現状では、iBeaconの名前、UUID、Major、Minorは値をとることができています
RangeがUNKNOWNとなり、Strengthが0、Accuracyが0、RSSIが0となっております。
この状況を顔異決したいと考えております。
この問題を解決するためのプログラムをどのようにすればよいか、「iBeacon」というアセットに関する又は使用している、サイトがあれば教えていただきたいです。

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

現状では、iBeaconの名前、UUID、Major、Minorは値をとることができています
RangeがUNKNOWNとなり、Strengthが0、Accuracyが0、RSSIが0となっております

該当のソースコード

C#

1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using UnityEngine.UI; 5using System; 6 7 8 9public class Test001 : MonoBehaviour 10{ 11 private string Region; 12 private string UUID; 13 private float Major; 14 private float Minor; 15 //private BeaconRange Range; 16 private float Strength; 17 private double Accuracy; 18 private int rssi; 19 public Text textUI; 20 public Text textUUI; 21 22 23 24 public enum BroadcastMode1 25 { 26 send = 0, 27 receive = 1, 28 unknown = 2 29 } 30 public enum BroadcastState1 31 { 32 inactive = 0, 33 active = 1 34 } 35 36 private BroadcastMode1 bm_Mode; 37 private BroadcastState1 bs_State; 38 39 [SerializeField] 40 private GameObject go_FoundBeacon; 41 List<GameObject> go_FoundBeaconCloneList = new List<GameObject>(); 42 43 private List<Beacon> mybeacons = new List<Beacon>(); 44 // Start is called before the first frame update 45 void Start() 46 { 47 BluetoothState.EnableBluetooth(); 48 iBeaconReceiver.Scan(); 49 // iBeaconReceiver.BeaconRangeChangedEvent += OnBeaconRangeChanged; 50 //iBeaconReceiver.BluetoothStateChangedEvent += OnBluetoothStateChanged; 51 } 52 53 54 // Update is called once per frame 55 void Update() 56 { 57 58 59 Region = iBeaconReceiver.regions[0].regionName; 60 UUID = iBeaconReceiver.regions[0].beacon.UUID; 61 Major = iBeaconReceiver.regions[0].beacon.major; 62 Minor = iBeaconReceiver.regions[0].beacon.minor; 63 //Range = iBeaconReceiver.regions[0].beacon.range; 64 Strength = iBeaconReceiver.regions[0].beacon.strength; 65 Accuracy = iBeaconReceiver.regions[0].beacon.accuracy; 66 rssi = iBeaconReceiver.regions[0].beacon.rssi; 67 68 iBeaconReceiver.Stop(); 69 textUI.text = "Region:" + Region + "\nUUID:" + UUID.ToString() + "\nMajor:" + Major.ToString() + "\nMinor:" + Minor.ToString() + "\nRange:" + iBeaconReceiver.regions[0].beacon.range.ToString() + "\nStrength:" + Strength.ToString() + "db" + "\nAccuracy:" + Accuracy.ToString() 70 + "m" + "\nRssi:" + rssi.ToString() + "db"; 71 72 } 73} 74

試したこと

アセット内のプログラムの勉強
アセットを利用しているサイトがないか調べた

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

Unity2019。4.15f
UnityAssetStore「iBeacon」
Android端末「Xperia1」

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

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

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

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

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

guest

回答1

0

自己解決

コードの一部を以下に変更すると解決できました。

C#

1    Range = mybeacons[0].range; 2 Strength = mybeacons[0].strength; 3 Accuracy = mybeacons[0].accuracy; 4 rssi = mybeacons[0].rssi;

投稿2021/07/14 17:21

wing

総合スコア20

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問