{"id":642242,"date":"2019-10-30T10:33:08","date_gmt":"2019-10-30T17:33:08","guid":{"rendered":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=642242"},"modified":"2021-02-22T17:35:56","modified_gmt":"2021-02-23T01:35:56","slug":"introducing-new-debugging-tools-appstudio","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio","title":{"rendered":"Introducing New Debugging Tools in AppStudio"},"author":8092,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[37101],"tags":[72381,492422,24621,24631],"industry":[],"product":[36621],"class_list":["post-642242","blog","type-blog","status-publish","format-standard","hentry","category-announcements","tag-debugging","tag-profiling","tag-qml","tag-qt","product-appstudio"],"acf":{"short_description":"Introducing a new integrated Run button, \u00a0QML code debugging, and QML Profiling in the bundled Qt Creator application","flexible_content":[{"acf_fc_layout":"content","content":"<p>With the release of AppStudio for ArcGIS version 4.0, we have added many exciting new features, enhancements and bug fixes to help you create cross-platform native apps easier and faster. <a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/whats-new-in-appstudio-for-arcgis-4-0-august-2019\/\">Visit the What&#8217;s New post<\/a> to learn about all of the updates. But this blog post is for all the \u201ccode ninjas\u201d out there, as we will turn our focus to enhancements we made in AppStudio 4.0 to help our developers seeking more control when writing code and testing apps. The release introduces a new integrated Run button, \u00a0QML code debugging, and QML Profiling in the bundled Qt Creator application. These were the most requested features by AppStudio developers, and we are excited to deliver an improved and more comprehensive coding experience.<\/p>\n"},{"acf_fc_layout":"youtube","start_time":"0","end_time":"","youtube_video_url":"<iframe title=\"Introducing New Debugging Tools in AppStudio\" width=\"640\" height=\"360\" src=\"https:\/\/www.youtube.com\/embed\/FzZd3eGc1jA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>"},{"acf_fc_layout":"content","content":"<h2><\/h2>\n<h2>Integrated Run Button<\/h2>\n<p>&nbsp;<\/p>\n<p>Seasoned AppStudio developers all know the <strong>Alt+Shift+R<\/strong>\u00a0 keyboard shortcut off the top of their heads, as it becomes second nature.\u00a0 Edit some code, then a quick <strong>Alt+Shift+R<\/strong>\u00a0 to immediately see your code running in a live app. The alternative to this shortcut is to navigate through the UI menu <strong>(Tools &gt; External &gt; AppStudio &gt; Run)<\/strong>, this gets old real fast. But in AppStudio for ArcGIS version 4.0 we have enabled the <strong>(Green) Run button<\/strong> at the lower left of the Qt Creator window so that you can quickly test and run your apps with a single click. (don\u2019t worry keyboard enthusiast, Alt+Shift+R still works the same)<\/p>\n<p>&nbsp;<\/p>\n<h2>QML Debugging<\/h2>\n<p>&nbsp;<\/p>\n<p>The conventional method to debug your AppStudio apps is to use <strong>console.log()<\/strong> messaging in your QML code, as these messages are displayed in the Qt Creator console when running the app in AppRun. AppStudio version 4.0 provides a more powerful method to debug your AppStudio app, by giving immediate access to the Qt Creator debugging tools. To open your app in debug mode, either <strong>press F5<\/strong> in Qt Creator, or click the <strong>Start debugging of the startup project button<\/strong> at the lower left of the Qt Creator window. See <a href=\"https:\/\/doc.qt.io\/qtcreator\/creator-debug-mode.html\">Interacting with the Debugger in the Qt documentation<\/a> for more information on how to use the debugging tools in Qt Creator.<\/p>\n<p>&nbsp;<\/p>\n<p>For AppStudio developers, Qt Creator Debug mode lets you inspect\u00a0the state of your app while debugging. You can interact with the debugger and interrupt running programs by <strong>setting breakpoints<\/strong>, go through a program line-by-line, examine and modify contents of local and global variables, and disassemble sections of code. Qt Creator displays the raw information provided by the native debuggers in a clear and concise manner with the goal to simplify the debugging process as much as possible. You can also use the Debug mode views to examine the data in more detail.<\/p>\n<p>&nbsp;<\/p>\n<h2>QML Profiling<\/h2>\n<p>&nbsp;<\/p>\n<p>QML Profiler is a very useful tool to find the causes for typical performance-related problems in your app, such as slowness and unresponsive, stuttering user interface. Typical causes include executing too much JavaScript code in a short amount of time. To monitor the performance of AppStudio apps in the QML Profiler, select <strong>Analyze &gt; QML Profiler<\/strong> to the profile of the current application in Qt Creator bundled in AppStudio for ArcGIS. When you start analyzing an app, the app is launched, and the QML Profiler immediately begins to collect data. This is indicated by the time running in the Elapsed field. Data is collected until you close or exit the app.<\/p>\n<p>&nbsp;<\/p>\n<p>Data is displayed in three separate tabs: Timeline, Flame Graph and Statistics. The <strong>Timeline<\/strong> view displays the graphical representation of QML and Javascript execution and a condensed view of all recorded events. Events in the Timeline view generally indicate how long the QML or JavaScript execution took. Move the mouse over them to see details. For most events, it includes location in the source code, duration and some relevant parts of the source code itself. The <b>Flame Graph<\/b> view shows a more concise statistical overview of QML and JavaScript execution,\u00a0the horizontal bars show the amount of time all invocations of a certain function took together, relative to the total runtime of all JavaScript and QML events. The <strong>Statistic<\/strong> view displays the number of times each binding. create, compile JavaScript, or signal event is triggered and the average time it takes. This allows you to examine which events you need to optimize.\u00a0 See <a href=\"https:\/\/doc.qt.io\/qtcreator\/creator-qml-performance-monitor.html#analyzing-collected-data\">Profiling QML Applications &gt; Analyzing Collected Data in the Qt documentation<\/a> for more information on collected data.<\/p>\n<p>&nbsp;<\/p>\n<p>We hope you like these new features added to the Qt Creator bundled in AppStudio for ArcGIS.<\/p>\n<ul>\n<li data-aria-level=\"1\" data-aria-posinset=\"1\" data-font=\"Symbol\" data-leveltext=\"\uf0b7\" data-listid=\"1\"><em><span class=\"TextRun BCX5 SCXW170066723\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun BCX5 SCXW170066723\">Please let us know your feedback and\u00a0<\/span><\/span><span class=\"TextRun Highlight BCX5 SCXW170066723\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun BCX5 SCXW170066723\">suggestions by emailing\u00a0<\/span><\/span><a class=\"Hyperlink BCX5 SCXW170066723\" href=\"mailto:appstudiofeedback@esri.com\" target=\"_blank\" rel=\"noopener noreferrer\"><span class=\"TextRun Highlight Underlined BCX5 SCXW170066723\" lang=\"EN-US\" xml:lang=\"EN-US\" data-contrast=\"none\"><span class=\"NormalTextRun BCX5 SCXW170066723\">appstudiofeedback@esri.com.<\/span><\/span><\/a><\/em><\/li>\n<li data-aria-level=\"1\" data-aria-posinset=\"1\" data-font=\"Symbol\" data-leveltext=\"\uf0b7\" data-listid=\"1\"><em>New to\u00a0AppStudio? Check out\u00a0<a class=\"jive-link-external-small\" href=\"https:\/\/www.esri.com\/en-us\/arcgis\/products\/appstudio-for-arcgis\/overview\" target=\"_blank\" rel=\"nofollow noopener\">this website<\/a>\u00a0to learn more about what AppStudio for ArcGIS can do to you and your organization.\u00a0<\/em><\/li>\n<li data-aria-level=\"1\" data-aria-posinset=\"2\" data-font=\"Symbol\" data-leveltext=\"\uf0b7\" data-listid=\"1\"><em>Become an\u00a0AppStudio\u00a0for ArcGIS developer! Watch\u00a0<a class=\"jive-link-external-small\" href=\"https:\/\/www.youtube.com\/watch?v=6xdg58m5VU8\" target=\"_blank\" rel=\"nofollow noopener\">this video\u00a0<\/a>on how to sign up for a free trial.\u00a0<\/em><\/li>\n<li data-aria-level=\"1\" data-aria-posinset=\"3\" data-font=\"Symbol\" data-leveltext=\"\uf0b7\" data-listid=\"1\"><em>Follow us on Twitter\u202f<a class=\"jive-link-external-small\" href=\"https:\/\/twitter.com\/AppStudioArcGIS\" target=\"_blank\" rel=\"nofollow noopener\">@AppStudioArcGIS<\/a>\u00a0to keep up-to-date on the latest information and let us know about your creations built using AppStudio to be featured in the\u202f<a class=\"jive-link-external-small\" href=\"http:\/\/esri.github.io\/arcgis-appstudio-samples\/\" target=\"_blank\" rel=\"nofollow noopener\">AppStudio Showcase<\/a>.<\/em><\/li>\n<li data-aria-level=\"1\" data-aria-posinset=\"4\" data-font=\"Symbol\" data-leveltext=\"\uf0b7\" data-listid=\"1\"><em>The\u00a0AppStudio\u00a0team periodically hosts workshops and webinars; please\u00a0<a class=\"jive-link-external-small\" href=\"https:\/\/www.esri.com\/en-us\/arcgis\/products\/appstudio-for-arcgis\/newsletter\" target=\"_blank\" rel=\"nofollow noopener\">sign up\u00a0<\/a>for the AppStudio newsletter if you are interested in information regarding AppStudio events.\u00a0<\/em><\/li>\n<\/ul>\n"}],"authors":[{"ID":8092,"user_firstname":"Erwin","user_lastname":"Soekianto","nickname":"ESoekianto","user_nicename":"esoekianto","display_name":"Erwin Soekianto","user_email":"ESoekianto@esri.com","user_url":"","user_registered":"2018-06-13 00:53:23","user_description":"Erwin is a Product Engineer for AppStudio for ArcGIS in Redlands, California. During working hours, he loves helping people create cross-platform native apps. Outside working hours, he spends a lot of hours running in the mountains of San Gorgonio and Angeles National Forest.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/06\/facebook.jpg' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"}],"related_articles":"","card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2019\/08\/AppStudio-Blog-Card.png","wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2019\/08\/AppStudio-Blog-Banner3.png"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Introducing New Debugging Tools in AppStudio<\/title>\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.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Introducing New Debugging Tools in AppStudio\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio\" \/>\n<meta property=\"og:site_name\" content=\"ArcGIS Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/esrigis\/\" \/>\n<meta property=\"article:modified_time\" content=\"2021-02-23T01:35:56+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ESRI\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio\"},\"author\":{\"name\":\"Erwin Soekianto\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/db4ea75f04c8052b9c5120a5c787cd12\"},\"headline\":\"Introducing New Debugging Tools in AppStudio\",\"datePublished\":\"2019-10-30T17:33:08+00:00\",\"dateModified\":\"2021-02-23T01:35:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio\"},\"wordCount\":6,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"keywords\":[\"debugging\",\"profiling\",\"QML\",\"Qt\"],\"articleSection\":[\"Announcements\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio\",\"name\":\"Introducing New Debugging Tools in AppStudio\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2019-10-30T17:33:08+00:00\",\"dateModified\":\"2021-02-23T01:35:56+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Introducing New Debugging Tools in AppStudio\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"name\":\"ArcGIS Blog\",\"description\":\"Get insider info from Esri product teams\",\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\",\"name\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"width\":400,\"height\":400,\"caption\":\"Esri\"},\"image\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/esrigis\/\",\"https:\/\/x.com\/ESRI\",\"https:\/\/www.linkedin.com\/company\/5311\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/db4ea75f04c8052b9c5120a5c787cd12\",\"name\":\"Erwin Soekianto\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/06\/facebook.jpg\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/06\/facebook.jpg\",\"caption\":\"Erwin Soekianto\"},\"description\":\"Erwin is a Product Engineer for AppStudio for ArcGIS in Redlands, California. During working hours, he loves helping people create cross-platform native apps. Outside working hours, he spends a lot of hours running in the mountains of San Gorgonio and Angeles National Forest.\",\"sameAs\":[\"https:\/\/x.com\/erwintoni\"],\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/author\/esoekianto\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Introducing New Debugging Tools in AppStudio","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.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio","og_locale":"en_US","og_type":"article","og_title":"Introducing New Debugging Tools in AppStudio","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","article_modified_time":"2021-02-23T01:35:56+00:00","twitter_card":"summary_large_image","twitter_site":"@ESRI","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio"},"author":{"name":"Erwin Soekianto","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/db4ea75f04c8052b9c5120a5c787cd12"},"headline":"Introducing New Debugging Tools in AppStudio","datePublished":"2019-10-30T17:33:08+00:00","dateModified":"2021-02-23T01:35:56+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio"},"wordCount":6,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"keywords":["debugging","profiling","QML","Qt"],"articleSection":["Announcements"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio","name":"Introducing New Debugging Tools in AppStudio","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2019-10-30T17:33:08+00:00","dateModified":"2021-02-23T01:35:56+00:00","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/appstudio\/announcements\/introducing-new-debugging-tools-appstudio#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"Introducing New Debugging Tools in AppStudio"}]},{"@type":"WebSite","@id":"https:\/\/www.esri.com\/arcgis-blog\/#website","url":"https:\/\/www.esri.com\/arcgis-blog\/","name":"ArcGIS Blog","description":"Get insider info from Esri product teams","publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization","name":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","width":400,"height":400,"caption":"Esri"},"image":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/esrigis\/","https:\/\/x.com\/ESRI","https:\/\/www.linkedin.com\/company\/5311\/"]},{"@type":"Person","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/db4ea75f04c8052b9c5120a5c787cd12","name":"Erwin Soekianto","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/06\/facebook.jpg","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/06\/facebook.jpg","caption":"Erwin Soekianto"},"description":"Erwin is a Product Engineer for AppStudio for ArcGIS in Redlands, California. During working hours, he loves helping people create cross-platform native apps. Outside working hours, he spends a lot of hours running in the mountains of San Gorgonio and Angeles National Forest.","sameAs":["https:\/\/x.com\/erwintoni"],"url":"https:\/\/www.esri.com\/arcgis-blog\/author\/esoekianto"}]}},"text_date":"October 30, 2019","author_name":"Erwin Soekianto","author_page":"https:\/\/www.esri.com\/arcgis-blog\/author\/esoekianto","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2019\/08\/AppStudio-Blog-Banner3.png","primary_product":"ArcGIS AppStudio","tag_data":[{"term_id":72381,"name":"debugging","slug":"debugging","term_group":0,"term_taxonomy_id":72381,"taxonomy":"post_tag","description":"","parent":0,"count":3,"filter":"raw"},{"term_id":492422,"name":"profiling","slug":"profiling","term_group":0,"term_taxonomy_id":492422,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":24621,"name":"QML","slug":"qml","term_group":0,"term_taxonomy_id":24621,"taxonomy":"post_tag","description":"","parent":0,"count":33,"filter":"raw"},{"term_id":24631,"name":"Qt","slug":"qt","term_group":0,"term_taxonomy_id":24631,"taxonomy":"post_tag","description":"","parent":0,"count":36,"filter":"raw"}],"category_data":[{"term_id":37101,"name":"Announcements","slug":"announcements","term_group":0,"term_taxonomy_id":37101,"taxonomy":"category","description":"","parent":0,"count":1957,"filter":"raw"}],"product_data":[{"term_id":36621,"name":"ArcGIS AppStudio","slug":"appstudio","term_group":0,"term_taxonomy_id":36621,"taxonomy":"product","description":"","parent":36591,"count":88,"filter":"raw"}],"primary_product_link":"https:\/\/www.esri.com\/arcgis-blog\/?s=#&products=appstudio","_links":{"self":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/642242","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/users\/8092"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=642242"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/642242\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=642242"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=642242"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=642242"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=642242"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=642242"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}