Dovid Duskis

Summer of 2022

At Quadrant2 internship, I had two goals: comparing different cross platform frameworks, and research into more advanced cross platform features for use in Quadrant2 mobile applications. Mobile Framework Comparisons Android Native / Java The first version was done in Android native (Java) for me to be able to get the basic concept of the app. The app I recreated was a basic framework of the I am getting arrested app that Quadrant2 released a while ago. I created this app on theusing Java. The app contains multiple screens. The main screen has a bullseye in the middle that after being held down for three seconds will show the saved message, it also contains two icons: a settings icon and a QR icon that each takes the user to the respective screen. It also contains three colored buttons that when clicked on brings the user to a color select screen for the respective ring. The setting screen allows the user to save a message, their name, their phone number, and their email. The setting screen also has a toggle for the user to allow the app to have access to the location of the user. The QR screen has a QR code that when scanned shows the users message, it also has two buttons to either download the QR code or share it. Flutter + Dart. The second version I made the app using  which utilizes the language . I was able to program this on the android studio platform after downloading the flutter plugin. I was able to make a copy of the app in this language. What I liked about using flutter: I liked that there was a website that showed all of the plugins for dart, dart is a very structure oriented language. What I disliked about it: the rigidity of the language, I had a hard time understanding which widgets had which functions that could be attached to it.Cordova Electron The third version I attempted was in . Electron is built on Javascript and Typescript. To set up the project I had to use the command line to download the Cordova and Electron files to enable my computer to run cordova and electron apps. I however did not have a strong enough grasp of the language so I was only able to make part of the main screen, just the basic hold down the bullseye for three seconds.The fourth platform I looked into was . It is a Java based multiplatform application. It is an application that can generate Java projects which you could modify in  Other projects I worked on while I was at Quadrant2:

  • Android project that uploaded files to  bucket
  • deploying an aws java lambda function
  • Android project that involved the library to stream to an already set up  url that then sent the video to a s3 bucket, and I tried to get a dart file to interact with java code.

The uploader app that I made was fairly simple. I set up a bucket, picking a file or files from the android gallery and uploaded it using the amplify library. The android project was seeing how the streamaxia code worked and streaming the data to the correct url. I tried getting a dart file to be able to work with streamaxia however I was not able to get it to work. I believe the reason it did not work was because the dart file did not have the correct widget that streamaxia uses to stream. You create a new MethodChannel in the java code.