{"id":16942,"date":"2013-09-06T10:00:33","date_gmt":"2013-09-06T07:00:33","guid":{"rendered":"http:\/\/www.javacodegeeks.com\/?p=16942"},"modified":"2022-11-21T15:39:47","modified_gmt":"2022-11-21T13:39:47","slug":"android-compass-code-example","status":"publish","type":"post","link":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html","title":{"rendered":"Android Compass Code Example"},"content":{"rendered":"<p>Today I&#8217;m going to share a working code to make a very simple compass application for your android device.<br \/>\n&nbsp;<br \/>\nSome android device (like Huawei Y300 and Lenovo P700i) does not have full support of motions sensors so this code will not work for them.<\/p>\n<h2>Video Demo<\/h2>\n<p>Our code for today will run just like this:<br \/>\n&nbsp;<br \/>\n&nbsp;<br \/>\n&nbsp;<br \/>\n&nbsp;<br \/>\n<iframe style=\"height: 400px; width: 100%;\" src=\"\/\/www.youtube.com\/embed\/l8gR0izB_kc\" height=\"240\" width=\"320\" allowfullscreen=\"\" frameborder=\"0\"><\/iframe><\/p>\n<h2>Files Needed<\/h2>\n<p>You need to create your own compass image. For this example, I&#8217;m using a stock photo. Your image must be a PNG with transparent background, do not use this jpg file I used.<\/p>\n<p><a href=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/img_compass.jpg\"><img decoding=\"async\" class=\"aligncenter size-medium wp-image-17123\" alt=\"img_compass\" src=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/img_compass-300x300.jpg\" width=\"300\" height=\"300\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/img_compass-300x300.jpg 300w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/img_compass-150x150.jpg 150w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/img_compass-200x200.jpg 200w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/img_compass-100x100.jpg 100w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/img_compass-42x42.jpg 42w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/09\/img_compass.jpg 380w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<h2>Let&#8217;s Code<\/h2>\n<p>Here&#8217;s our <i>MainActivity.java<\/i><\/p>\n<pre class=\" brush:java\">package com.example.compassapp;\n\nimport android.app.Activity;\nimport android.hardware.Sensor;\nimport android.hardware.SensorEvent;\nimport android.hardware.SensorEventListener;\nimport android.hardware.SensorManager;\nimport android.os.Bundle;\nimport android.view.animation.Animation;\nimport android.view.animation.RotateAnimation;\nimport android.widget.ImageView;\nimport android.widget.TextView;\n\npublic class MainActivity extends Activity implements SensorEventListener {\n\n    \/\/ define the display assembly compass picture\n    private ImageView image;\n\n    \/\/ record the compass picture angle turned\n    private float currentDegree = 0f;\n\n    \/\/ device sensor manager\n    private SensorManager mSensorManager;\n\n    TextView tvHeading;\n\n    @Override\n    protected void onCreate(Bundle savedInstanceState) {\n        super.onCreate(savedInstanceState);\n        setContentView(R.layout.activity_main);\n\n        \/\/ \n        image = (ImageView) findViewById(R.id.main_iv);\n\n        \/\/ TextView that will tell the user what degree is he heading\n        tvHeading = (TextView) findViewById(R.id.tvHeading);\n\n        \/\/ initialize your android device sensor capabilities\n        mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);\n    }\n\n    @Override\n    protected void onResume() {\n        super.onResume();\n\n        \/\/ for the system's orientation sensor registered listeners\n        mSensorManager.registerListener(this, mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION),\n                SensorManager.SENSOR_DELAY_GAME);\n    }\n\n    @Override\n    protected void onPause() {\n        super.onPause();\n\n        \/\/ to stop the listener and save battery\n        mSensorManager.unregisterListener(this);\n    }\n\n    @Override\n    public void onSensorChanged(SensorEvent event) {\n\n        \/\/ get the angle around the z-axis rotated\n        float degree = Math.round(event.values[0]);\n\n        tvHeading.setText(\"Heading: \" + Float.toString(degree) + \" degrees\");\n\n        \/\/ create a rotation animation (reverse turn degree degrees)\n        RotateAnimation ra = new RotateAnimation(\n                currentDegree, \n                -degree,\n                Animation.RELATIVE_TO_SELF, 0.5f, \n                Animation.RELATIVE_TO_SELF,\n                0.5f);\n\n        \/\/ how long the animation will take place\n        ra.setDuration(210);\n\n        \/\/ set the animation after the end of the reservation status\n        ra.setFillAfter(true);\n\n        \/\/ Start the animation\n        image.startAnimation(ra);\n        currentDegree = -degree;\n\n    }\n\n    @Override\n    public void onAccuracyChanged(Sensor sensor, int accuracy) {\n        \/\/ not in use\n    }\n}<\/pre>\n<p>Our layout file <i>activity_main.xml<\/i><div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<pre class=\" brush:java\">&lt;RelativeLayout xmlns:android=\"http:\/\/schemas.android.com\/apk\/res\/android\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    android:background=\"#fff\" &gt;\n\n    &lt;TextView\n        android:id=\"@+id\/tvHeading\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_centerHorizontal=\"true\"\n        android:layout_marginBottom=\"40dp\"\n        android:layout_marginTop=\"20dp\"\n        android:text=\"Heading: 0.0\" \/&gt;\n\n    &lt;ImageView\n        android:id=\"@+id\/imageViewCompass\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_below=\"@+id\/tvHeading\"\n        android:layout_centerHorizontal=\"true\"\n        android:src=\"@drawable\/img_compass\" \/&gt;\n\n&lt;\/RelativeLayout&gt;<\/pre>\n<h2>Source Code Download<\/h2>\n<p>You can download this sample project here: <a href=\"http:\/\/download.codeofaninja.com\/download.php?code=823b3f2e91df92c6611211333b568ebb\" target=\"_blank\" rel=\"noopener\">CompassApp.zip<\/a><\/p>\n<h2>Some notes<\/h2>\n<p>My app orientation is locked to portrait mode. There are no special permissions in the Manifest file.<\/p>\n<h2>Further Readings<\/h2>\n<ul>\n<li><a href=\"http:\/\/developer.android.com\/reference\/android\/hardware\/SensorManager.html\" target=\"_blank\" rel=\"noopener\">Android SensorManager<\/a><\/li>\n<li><a href=\"http:\/\/developer.android.com\/reference\/android\/view\/animation\/RotateAnimation.html\" target=\"_blank\" rel=\"noopener\">Android RotateAnimation<\/a><\/li>\n<li><a href=\"http:\/\/developer.android.com\/guide\/topics\/sensors\/sensors_motion.html\" target=\"_blank\" rel=\"noopener\">Android Motion Sensors<\/a><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<div style=\"border: 1px solid #D8D8D8; background: #FAFAFA; width: 100%; padding-left: 5px;\"><b><i>Reference: <\/i><\/b><a href=\"http:\/\/www.codeofaninja.com\/2013\/08\/android-compass-code-example.html\">Android Compass Code Example<\/a> from our <a href=\"https:\/\/www.javacodegeeks.com\/jcg\">JCG partner<\/a> Mike Dalisay at the <a href=\"http:\/\/www.codeofaninja.com\/\">The Code of a Ninja<\/a> blog.<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Today I&#8217;m going to share a working code to make a very simple compass application for your android device. &nbsp; Some android device (like Huawei Y300 and Lenovo P700i) does not have full support of motions sensors so this code will not work for them. Video Demo Our code for today will run just like &hellip;<\/p>\n","protected":false},"author":458,"featured_media":46,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[],"class_list":["post-16942","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-android-core"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Android Compass Code Example<\/title>\n<meta name=\"description\" content=\"Today I&#039;m going to share a working code to make a very simple compass application for your android device. &nbsp; Some android device (like Huawei Y300\" \/>\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.javacodegeeks.com\/2013\/09\/android-compass-code-example.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Android Compass Code Example\" \/>\n<meta property=\"og:description\" content=\"Today I&#039;m going to share a working code to make a very simple compass application for your android device. &nbsp; Some android device (like Huawei Y300\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2013-09-06T07:00:33+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-11-21T13:39:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/android-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Mike Dalisay\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Mike Dalisay\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html\"},\"author\":{\"name\":\"Mike Dalisay\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/80afa5bba9e72c0ece4033703bb74bd9\"},\"headline\":\"Android Compass Code Example\",\"datePublished\":\"2013-09-06T07:00:33+00:00\",\"dateModified\":\"2022-11-21T13:39:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html\"},\"wordCount\":176,\"commentCount\":33,\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/android-logo.jpg\",\"articleSection\":[\"Android Core\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html\",\"name\":\"Android Compass Code Example\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/android-logo.jpg\",\"datePublished\":\"2013-09-06T07:00:33+00:00\",\"dateModified\":\"2022-11-21T13:39:47+00:00\",\"description\":\"Today I'm going to share a working code to make a very simple compass application for your android device. &nbsp; Some android device (like Huawei Y300\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/android-logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/android-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/09\\\/android-compass-code-example.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Android\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/android\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Android Core\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/android\\\/android-core\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Android Compass Code Example\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/80afa5bba9e72c0ece4033703bb74bd9\",\"name\":\"Mike Dalisay\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bcd6198e748dd8afcc6285fe7f23ebf1e50c82389162d94eea98443c9fffc597?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bcd6198e748dd8afcc6285fe7f23ebf1e50c82389162d94eea98443c9fffc597?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bcd6198e748dd8afcc6285fe7f23ebf1e50c82389162d94eea98443c9fffc597?s=96&d=mm&r=g\",\"caption\":\"Mike Dalisay\"},\"sameAs\":[\"http:\\\/\\\/www.codeofaninja.com\\\/\"],\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/author\\\/mike-dalisay\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Android Compass Code Example","description":"Today I'm going to share a working code to make a very simple compass application for your android device. &nbsp; Some android device (like Huawei Y300","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.javacodegeeks.com\/2013\/09\/android-compass-code-example.html","og_locale":"en_US","og_type":"article","og_title":"Android Compass Code Example","og_description":"Today I'm going to share a working code to make a very simple compass application for your android device. &nbsp; Some android device (like Huawei Y300","og_url":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2013-09-06T07:00:33+00:00","article_modified_time":"2022-11-21T13:39:47+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/android-logo.jpg","type":"image\/jpeg"}],"author":"Mike Dalisay","twitter_card":"summary_large_image","twitter_creator":"@javacodegeeks","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Mike Dalisay","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html#article","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html"},"author":{"name":"Mike Dalisay","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/80afa5bba9e72c0ece4033703bb74bd9"},"headline":"Android Compass Code Example","datePublished":"2013-09-06T07:00:33+00:00","dateModified":"2022-11-21T13:39:47+00:00","mainEntityOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html"},"wordCount":176,"commentCount":33,"publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/android-logo.jpg","articleSection":["Android Core"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html","url":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html","name":"Android Compass Code Example","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/android-logo.jpg","datePublished":"2013-09-06T07:00:33+00:00","dateModified":"2022-11-21T13:39:47+00:00","description":"Today I'm going to share a working code to make a very simple compass application for your android device. &nbsp; Some android device (like Huawei Y300","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/android-logo.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/android-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/2013\/09\/android-compass-code-example.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Android","item":"https:\/\/www.javacodegeeks.com\/category\/android"},{"@type":"ListItem","position":3,"name":"Android Core","item":"https:\/\/www.javacodegeeks.com\/category\/android\/android-core"},{"@type":"ListItem","position":4,"name":"Android Compass Code Example"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/80afa5bba9e72c0ece4033703bb74bd9","name":"Mike Dalisay","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/bcd6198e748dd8afcc6285fe7f23ebf1e50c82389162d94eea98443c9fffc597?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/bcd6198e748dd8afcc6285fe7f23ebf1e50c82389162d94eea98443c9fffc597?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/bcd6198e748dd8afcc6285fe7f23ebf1e50c82389162d94eea98443c9fffc597?s=96&d=mm&r=g","caption":"Mike Dalisay"},"sameAs":["http:\/\/www.codeofaninja.com\/"],"url":"https:\/\/www.javacodegeeks.com\/author\/mike-dalisay"}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/16942","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/458"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=16942"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/16942\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media\/46"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=16942"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=16942"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=16942"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}