{"id":1255,"date":"2025-02-01T18:04:37","date_gmt":"2025-02-01T18:04:37","guid":{"rendered":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/?p=1255"},"modified":"2025-02-08T00:26:33","modified_gmt":"2025-02-08T00:26:33","slug":"week-17-mobile-development-start","status":"publish","type":"post","link":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/2025\/02\/01\/week-17-mobile-development-start\/","title":{"rendered":"Week 17: Mobile Development, start!"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"538\" src=\"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/02\/image-1024x538.png\" alt=\"\" class=\"wp-image-1257\" srcset=\"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/02\/image-1024x538.png 1024w, https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/02\/image-300x158.png 300w, https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/02\/image-768x403.png 768w, https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/02\/image-1536x807.png 1536w, https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/02\/image-400x210.png 400w, https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/02\/image.png 1567w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">SyncAssist&#8217;s issue board<\/figcaption><\/figure>\n\n\n\n<p>With most of our major presentations out of the way for now, SyncAssist is now ready to start our major project for this semester: development of our mobile app! As mentioned in Week 15, we&#8217;d decided to use the Expo Go framework with React Native, which allows us develop iOS apps without building on a Mac. Unfortunately, we&#8217;ve run into some minor roadblocks in this area.<\/p>\n\n\n\n<p>It turns out that the Expo Go app that you can download from the App Store to run your app has <a href=\"https:\/\/expo.canny.io\/feature-requests\/p\/webrtc\">no built-in support for WebRTC<\/a>. This means that we&#8217;ll have to use Expo Dev Clients instead and build the app locally, which means we need Xcode \ud83d\ude2d. Fortunately, one of our team members has a Macbook, so we&#8217;ll be offloading all of the iOS app building to him for now.<\/p>\n\n\n\n<p>We also ran into some potential issues with integrating lib-jitsi-meet into our mobile app. Since it was a primarily web-focused library, it uses browser constructs like Document.querySelector and DOM traversal that aren&#8217;t a part of React Native. Fortunately, it looks like the developers of the Jitsi Meet mobile app solved this issue with <a href=\"https:\/\/github.com\/jitsi\/jitsi-meet\/blob\/532b5858c55e0d4c772edcb8369a2c2c8baaee64\/react\/features\/mobile\/polyfills\/browser.js\" data-type=\"link\" data-id=\"https:\/\/github.com\/jitsi\/jitsi-meet\/blob\/532b5858c55e0d4c772edcb8369a2c2c8baaee64\/react\/features\/mobile\/polyfills\/browser.js\">polyfills<\/a> for all of those browser functionalities, so we shouldn&#8217;t have much of an issue copying what they did.<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>With most of our major presentations out of the way for now, SyncAssist is now ready to start our major project for this semester: development of our mobile app! As mentioned in Week 15, we&#8217;d decided to use the Expo&hellip; <a href=\"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/2025\/02\/01\/week-17-mobile-development-start\/\" aria-label=\"Read \\\"Week 17: Mobile Development, start!\\\" class=\"read-more\">Read&nbsp;More<\/a><\/p>\n","protected":false},"author":619,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[12],"tags":[],"class_list":["post-1255","post","type-post","status-publish","format-standard","hentry","category-springsemester"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/posts\/1255"}],"collection":[{"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/users\/619"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/comments?post=1255"}],"version-history":[{"count":2,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/posts\/1255\/revisions"}],"predecessor-version":[{"id":1261,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/posts\/1255\/revisions\/1261"}],"wp:attachment":[{"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/media?parent=1255"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/categories?post=1255"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/tags?post=1255"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}