{"id":884,"date":"2023-01-12T23:03:54","date_gmt":"2023-01-12T22:03:54","guid":{"rendered":"https:\/\/www.bellingo.de\/blog\/?p=884"},"modified":"2023-05-12T17:44:26","modified_gmt":"2023-05-12T15:44:26","slug":"bluetooth-permissions-on-android-12-with-unity","status":"publish","type":"post","link":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/","title":{"rendered":"Bluetooth Permissions on Android 12 with Unity (DevBlog #27)"},"content":{"rendered":"\n<p>For quite some time now I had problems with the <em>Nearby Devices<\/em> permission necessary for <a href=\"https:\/\/de.wikipedia.org\/wiki\/Bluetooth_Low_Energy\" target=\"_blank\" rel=\"noreferrer noopener\">Bluetooth LE<\/a> from Android 12 upwards. I finally fixed this in <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.GamesVineyard.NetworkTraders\" target=\"_blank\" rel=\"noreferrer noopener\">Network Traders<\/a> 0.4.6.1, but not without some trial and error. Here is what I tried and how I finally fixed my permissions issues using the Unity API.<\/p>\n\n\n\n<!--more-->\n\n\n\n<p>In Network Traders, you send <a href=\"https:\/\/www.bellingo.de\/blog\/devblog-the-merchants-in-network-traders\/\" target=\"_blank\" rel=\"noreferrer noopener\">merchants<\/a> &#8211; a kind of independent software agent &#8211; from your mobile device to those of other players. A unique feature of the game is that you need to be in the vicinity of the other device, and this is ensured using Bluetooth Low Energy (BLE) signals. <\/p>\n\n\n\n<div class='code-block code-block-2' style='margin: 8px 0; clear: both;'>\n<script async src=\"https:\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-5801154588989661\"\n     crossorigin=\"anonymous\"><\/script>\n<!-- Posts Standard -->\n<ins class=\"adsbygoogle\"\n     style=\"display:block\"\n     data-ad-client=\"ca-pub-5801154588989661\"\n     data-ad-slot=\"5874520813\"\n     data-ad-format=\"auto\"\n     data-full-width-responsive=\"true\"><\/ins>\n<script>\n     (adsbygoogle = window.adsbygoogle || []).push({});\n<\/script><\/div>\n\n\n\n\n<p>However, BLE is also used for so-called <a href=\"https:\/\/en.wikipedia.org\/wiki\/Bluetooth_Low_Energy_beacon\" target=\"_blank\" rel=\"noreferrer noopener\">beacons<\/a>, devices of which the physical location can be tracked via these radio signals. So when playing the game, your mobile device exhibits the same properties as such a beacon. In principle, it is therefore possible to track its location. This may not be desired by the user, so the necessary permissions, such as <a href=\"https:\/\/developer.android.com\/reference\/android\/Manifest.permission#ACCESS_FINE_LOCATION\" target=\"_blank\" rel=\"noreferrer noopener\">ACCESS_FINE_LOCATION<\/a>, are rated as &#8222;dangerous&#8220; by Android.<\/p>\n\n\n\n<p>Up until Android 11 (<a href=\"https:\/\/developer.android.com\/studio\/releases\/platforms\" target=\"_blank\" rel=\"noreferrer noopener\">API level 30<\/a>) it was enough to declare the necessary permissions in your Android manifest. Even the location permissions were not required. The manifest was as simple as this:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><a href=\"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/BluetoothManifestAndroid11.png\"><img loading=\"lazy\" decoding=\"async\" width=\"571\" height=\"49\" src=\"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/BluetoothManifestAndroid11.png\" alt=\"Permissions for Bluetooth LE in Android manifest until Android 11.\" class=\"wp-image-886\" srcset=\"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/BluetoothManifestAndroid11.png 571w, https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/BluetoothManifestAndroid11-300x26.png 300w\" sizes=\"auto, (max-width: 571px) 100vw, 571px\" \/><\/a><\/figure>\n\n\n\n<p>From API level 31 on, Android got more restrictive. From this release on the Bluetooth permissions were not enough. It became necessary to request the <a href=\"https:\/\/www.bellingo.de\/blog\/app-permissions-for-network-traders\/\" target=\"_blank\" rel=\"noreferrer noopener\">ACCESS_COARSE_LOCATION and ACCESS_FINE_LOCATION permissions<\/a> as well. And even the Bluetooth permissions themselves changed. The <a href=\"https:\/\/developer.android.com\/guide\/topics\/connectivity\/bluetooth\/permissions\" target=\"_blank\" rel=\"noreferrer noopener\">respective Android manifest<\/a> now looks like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>    &lt;uses-permission android:name=\"android.permission.BLUETOOTH_ADMIN\" android:maxSdkVersion=\"30\" \/&gt;\n    &lt;uses-permission android:name=\"android.permission.BLUETOOTH\" android:maxSdkVersion=\"30\" \/&gt;\n    &lt;uses-permission android:name=\"android.permission.BLUETOOTH_SCAN\" android:usesPermissionFlags=\"neverForLocation\" \/&gt;\n    &lt;uses-permission android:name=\"android.permission.BLUETOOTH_ADVERTISE\" \/&gt;\n    &lt;uses-permission android:name=\"android.permission.BLUETOOTH_CONNECT\" \/&gt;\n    &lt;uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\" \/&gt;\n    &lt;uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\" \/&gt;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Request Permissions in Java and Unity<\/h2>\n\n\n\n<p>However, stating the permissions in the manifest is not enough. You need to request them when you actually want to use the respective functionality. In my case, advertise and receive data over BLE. If you are using your own library written in Java, you can either read the <a href=\"https:\/\/developer.android.com\/training\/location\/permissions\" target=\"_blank\" rel=\"noreferrer noopener\">Android documentation<\/a> describing the process in detail. Or you can follow the lint suggestions of Android Studio and use code such as this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>if (ContextCompat.checkSelfPermission(UnityPlayer.currentActivity, Manifest.permission.BLUETOOTH_CONNECT) != PackageManager.PERMISSION_GRANTED) {\n  if (Build.VERSION.SDK_INT &gt;= Build.VERSION_CODES.S) {\n    ActivityCompat.requestPermissions(UnityPlayer.currentActivity, new String&#091;]{Manifest.permission.BLUETOOTH_CONNECT}, 2);\n    return;\n  }\n}\nIntent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);\nactivity.startActivityForResult(enableIntent, REQUEST_ENABLE_BT);<\/code><\/pre>\n\n\n\n<p>In theory, this should work, but in case you are using a Unity Asset Store package like <a href=\"https:\/\/assetstore.unity.com\/packages\/tools\/network\/bluetooth-networking-for-ios-tvos-and-android-124274\" target=\"_blank\" rel=\"noreferrer noopener\">Bluetooth Networking<\/a> you probably do not have access to the underlying code. Fortunately, Unity provides the <em><a href=\"https:\/\/docs.unity3d.com\/2023.1\/Documentation\/ScriptReference\/Android.Permission.html\" target=\"_blank\" rel=\"noreferrer noopener\">Permission<\/a><\/em> class (since Unity 2018.3) which can handle this. The method <a href=\"https:\/\/docs.unity3d.com\/2023.1\/Documentation\/ScriptReference\/Android.Permission.RequestUserPermissions.html\" target=\"_blank\" rel=\"noreferrer noopener\"><em>Permission.RequestUserPermissions<\/em><\/a>, available since Unity 2020.2, allows you to request multiple permissions at once. I recommend using this instead of requesting one permission at a time, which did not work for me. So your Unity script for creating a BLE connection might contain a request like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#if UNITY_2020_2_OR_NEWER\n#if UNITY_ANDROID\nif (!Permission.HasUserAuthorizedPermission(Permission.CoarseLocation)\n  || !Permission.HasUserAuthorizedPermission(Permission.FineLocation)\n  || !Permission.HasUserAuthorizedPermission(\"android.permission.BLUETOOTH_SCAN\")\n  || !Permission.HasUserAuthorizedPermission(\"android.permission.BLUETOOTH_ADVERTISE\")\n  || !Permission.HasUserAuthorizedPermission(\"android.permission.BLUETOOTH_CONNECT\"))\n  Permission.RequestUserPermissions(new string&#091;] {\n    Permission.CoarseLocation,\n    Permission.FineLocation,\n    \"android.permission.BLUETOOTH_SCAN\",\n    \"android.permission.BLUETOOTH_ADVERTISE\",\n    \"android.permission.BLUETOOTH_CONNECT\"\n  });\n#endif\n#endif<\/code><\/pre>\n\n\n\n<p>Now, since Network Traders 0.4.6.1, new players should not have to access their settings anymore to grant the &#8222;devices nearby&#8220; permission manually. At least on my test device, this is not the case anymore. How about yours? I&#8217;d really appreciate it if you downloaded the game from <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.GamesVineyard.NetworkTraders\" target=\"_blank\" rel=\"noreferrer noopener\">Google Play Store<\/a> and tried it. I&#8217;m looking forward to your feedback!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>For quite some time now I had problems with the Nearby Devices permission necessary for Bluetooth LE from Android 12 upwards. I finally fixed this in Network Traders 0.4.6.1, but not without some trial and error. Here is what I tried and how I finally fixed my permissions issues using the Unity API.<\/p>\n","protected":false},"author":1,"featured_media":889,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[163,229,49,55],"tags":[324,328,230,330,306,332,231,326,67],"class_list":["post-884","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-android","category-devblog","category-game-development","category-unity-en","tag-android-12","tag-bluetooth-low-energy","tag-devblog","tag-java","tag-mobile-game","tag-nearby-devices","tag-network-traders","tag-permissions","tag-unity-en"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Bluetooth Permissions on Android 12 with Unity (DevBlog #27) - Games:Tech:Blog<\/title>\n<meta name=\"description\" content=\"Bluetooth Low Energy needs some additional permissions since Android 12. Request them in your game using the Unity API or Java code.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Bluetooth Permissions on Android 12 with Unity (DevBlog #27) - Games:Tech:Blog\" \/>\n<meta property=\"og:description\" content=\"Bluetooth Low Energy needs some additional permissions since Android 12. Request them in your game using the Unity API or Java code.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/\" \/>\n<meta property=\"og:site_name\" content=\"Games:Tech:Blog\" \/>\n<meta property=\"article:published_time\" content=\"2023-01-12T22:03:54+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-05-12T15:44:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/Beitragsbild-Bluetooth-Permissions.png\" \/>\n\t<meta property=\"og:image:width\" content=\"829\" \/>\n\t<meta property=\"og:image:height\" content=\"464\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ingo\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ingo\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"4\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/\"},\"author\":{\"name\":\"Ingo\",\"@id\":\"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/82498f8ac21d11f5948cab6d0a9807e9\"},\"headline\":\"Bluetooth Permissions on Android 12 with Unity (DevBlog #27)\",\"datePublished\":\"2023-01-12T22:03:54+00:00\",\"dateModified\":\"2023-05-12T15:44:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/\"},\"wordCount\":486,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/82498f8ac21d11f5948cab6d0a9807e9\"},\"image\":{\"@id\":\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/Beitragsbild-Bluetooth-Permissions.png\",\"keywords\":[\"Android 12\",\"Bluetooth Low Energy\",\"DevBlog\",\"Java\",\"Mobile Game\",\"Nearby Devices\",\"Network Traders\",\"Permissions\",\"Unity\"],\"articleSection\":[\"Android\",\"DevBlog\",\"Game development\",\"Unity\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/\",\"url\":\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/\",\"name\":\"Bluetooth Permissions on Android 12 with Unity (DevBlog #27) - Games:Tech:Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.bellingo.de\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/Beitragsbild-Bluetooth-Permissions.png\",\"datePublished\":\"2023-01-12T22:03:54+00:00\",\"dateModified\":\"2023-05-12T15:44:26+00:00\",\"description\":\"Bluetooth Low Energy needs some additional permissions since Android 12. Request them in your game using the Unity API or Java code.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#primaryimage\",\"url\":\"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/Beitragsbild-Bluetooth-Permissions.png\",\"contentUrl\":\"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/Beitragsbild-Bluetooth-Permissions.png\",\"width\":829,\"height\":464,\"caption\":\"Bluetooth Permissions in Network Traders\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.bellingo.de\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Bluetooth Permissions on Android 12 with Unity (DevBlog #27)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.bellingo.de\/blog\/#website\",\"url\":\"https:\/\/www.bellingo.de\/blog\/\",\"name\":\"Games:Tech:Blog\",\"description\":\"A Blog about Games, Technology in Games, and Technology in General\",\"publisher\":{\"@id\":\"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/82498f8ac21d11f5948cab6d0a9807e9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.bellingo.de\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/82498f8ac21d11f5948cab6d0a9807e9\",\"name\":\"Ingo\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/93a4b9881ee1983f4fafc7e996ce82a42c3a1540c18f7417809c08a19658f167?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/93a4b9881ee1983f4fafc7e996ce82a42c3a1540c18f7417809c08a19658f167?s=96&d=mm&r=g\",\"caption\":\"Ingo\"},\"logo\":{\"@id\":\"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/image\/\"},\"url\":\"https:\/\/www.bellingo.de\/blog\/author\/ingo\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Bluetooth Permissions on Android 12 with Unity (DevBlog #27) - Games:Tech:Blog","description":"Bluetooth Low Energy needs some additional permissions since Android 12. Request them in your game using the Unity API or Java code.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/","og_locale":"de_DE","og_type":"article","og_title":"Bluetooth Permissions on Android 12 with Unity (DevBlog #27) - Games:Tech:Blog","og_description":"Bluetooth Low Energy needs some additional permissions since Android 12. Request them in your game using the Unity API or Java code.","og_url":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/","og_site_name":"Games:Tech:Blog","article_published_time":"2023-01-12T22:03:54+00:00","article_modified_time":"2023-05-12T15:44:26+00:00","og_image":[{"width":829,"height":464,"url":"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/Beitragsbild-Bluetooth-Permissions.png","type":"image\/png"}],"author":"Ingo","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Ingo","Gesch\u00e4tzte Lesezeit":"4\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#article","isPartOf":{"@id":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/"},"author":{"name":"Ingo","@id":"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/82498f8ac21d11f5948cab6d0a9807e9"},"headline":"Bluetooth Permissions on Android 12 with Unity (DevBlog #27)","datePublished":"2023-01-12T22:03:54+00:00","dateModified":"2023-05-12T15:44:26+00:00","mainEntityOfPage":{"@id":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/"},"wordCount":486,"commentCount":0,"publisher":{"@id":"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/82498f8ac21d11f5948cab6d0a9807e9"},"image":{"@id":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/Beitragsbild-Bluetooth-Permissions.png","keywords":["Android 12","Bluetooth Low Energy","DevBlog","Java","Mobile Game","Nearby Devices","Network Traders","Permissions","Unity"],"articleSection":["Android","DevBlog","Game development","Unity"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/","url":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/","name":"Bluetooth Permissions on Android 12 with Unity (DevBlog #27) - Games:Tech:Blog","isPartOf":{"@id":"https:\/\/www.bellingo.de\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#primaryimage"},"image":{"@id":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/Beitragsbild-Bluetooth-Permissions.png","datePublished":"2023-01-12T22:03:54+00:00","dateModified":"2023-05-12T15:44:26+00:00","description":"Bluetooth Low Energy needs some additional permissions since Android 12. Request them in your game using the Unity API or Java code.","breadcrumb":{"@id":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#primaryimage","url":"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/Beitragsbild-Bluetooth-Permissions.png","contentUrl":"https:\/\/www.bellingo.de\/blog\/wp-content\/uploads\/2023\/01\/Beitragsbild-Bluetooth-Permissions.png","width":829,"height":464,"caption":"Bluetooth Permissions in Network Traders"},{"@type":"BreadcrumbList","@id":"https:\/\/www.bellingo.de\/blog\/bluetooth-permissions-on-android-12-with-unity\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.bellingo.de\/blog\/"},{"@type":"ListItem","position":2,"name":"Bluetooth Permissions on Android 12 with Unity (DevBlog #27)"}]},{"@type":"WebSite","@id":"https:\/\/www.bellingo.de\/blog\/#website","url":"https:\/\/www.bellingo.de\/blog\/","name":"Games:Tech:Blog","description":"A Blog about Games, Technology in Games, and Technology in General","publisher":{"@id":"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/82498f8ac21d11f5948cab6d0a9807e9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.bellingo.de\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":["Person","Organization"],"@id":"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/82498f8ac21d11f5948cab6d0a9807e9","name":"Ingo","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/93a4b9881ee1983f4fafc7e996ce82a42c3a1540c18f7417809c08a19658f167?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/93a4b9881ee1983f4fafc7e996ce82a42c3a1540c18f7417809c08a19658f167?s=96&d=mm&r=g","caption":"Ingo"},"logo":{"@id":"https:\/\/www.bellingo.de\/blog\/#\/schema\/person\/image\/"},"url":"https:\/\/www.bellingo.de\/blog\/author\/ingo\/"}]}},"_links":{"self":[{"href":"https:\/\/www.bellingo.de\/blog\/wp-json\/wp\/v2\/posts\/884","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bellingo.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bellingo.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bellingo.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bellingo.de\/blog\/wp-json\/wp\/v2\/comments?post=884"}],"version-history":[{"count":7,"href":"https:\/\/www.bellingo.de\/blog\/wp-json\/wp\/v2\/posts\/884\/revisions"}],"predecessor-version":[{"id":977,"href":"https:\/\/www.bellingo.de\/blog\/wp-json\/wp\/v2\/posts\/884\/revisions\/977"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bellingo.de\/blog\/wp-json\/wp\/v2\/media\/889"}],"wp:attachment":[{"href":"https:\/\/www.bellingo.de\/blog\/wp-json\/wp\/v2\/media?parent=884"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bellingo.de\/blog\/wp-json\/wp\/v2\/categories?post=884"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bellingo.de\/blog\/wp-json\/wp\/v2\/tags?post=884"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}