Repository files navigation

Android Projects

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Projects Include:

Outlined below are screenshots of the applications mentioned above, showcasing their UI and functionality.

Calculator App

This project was my first android application, developed in order to showcase my knowledge with basic Java operations (such as parsing text, doing simple math calculations, printing and formatting text, etc). I decided to utilize my knowledge of data structures to store and operate the calculations, helping with the application's efficiency.

Technologies/Tools Highlighted

  • String Tokenizer
  • Stacks
  • Mathematical Operations

Application in Action

Below are screenshots of the application in action:

Application GreetingSimple OperationsOrder of OperationsSpecial OperationsDecimal Operations
scene1scene2scene3scene4scene5

Although the application was not designed for landscape use, it is still functional in that orientation, as illustrated below:

Landscape GreetingLandscape Operations
scene2scene3
rec.mov

Periodic Table App

This project was developed in order to showcase my knowledge with both the ListView module in Android Studio and the Volley module for API requests. After meeting various requirements (such as populating a listview with a certain amount of elements, adding functionality such as images and removing elements to each element of the listview, keeping it's position and listview's population amount after rotation, and showcasing various descriptions and information on each element while selected), I decided to dabble into the realm of API development. Utilizing the expertise from my web-development skills, I developed an API featuring Bowserinator's data, and with the use of the Volley module for Android Studio, I was able to populate the listview with my API calls. I also added a shuffle button to spice up the order of the elements in the list.

An in house API was developed for the project, which can be found here.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Custom API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingSelected Info on ElementManaging/Deleting ElementsShuffling Elements
scene1scene2scene3scene4
Landscape GreetingSelected Info on ElementManaging/Deleting Elements
scene1scene2scene3
rec.mov

Weather App

This project was developed in order to showcase my knowledge with API requests (and fetch GET/POST requests for various APIs). Initially, I was required to implement AsyncTask within the application (a severely outdated module that was depricated within Android API V.29), but it was unsupported for development on my M1 Mac (supporting Android API V.30 or higher). Due to this, I decided to utilize my knowledge with the Volley module (from the Periodic Table App) and develop the application implementing that dependency instead.

I utilized the Open Weathermap API, making 2 seperate API calls: one to translate the inputted zipcode into usable information (longitude and latitude coordinates), and another one to fetch weather data and metadata from the usable information.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingExample FetchExample Fetch 2Example Fetch 3
scene1scene2scene3scene4
weatherAppDemo.mov

Geoencoder Map Visualization App

This project was developed in order to familiarize myself with device permissions. Initially, I was required to utilize specific device permissions in order to access the specific latitude and longitude coordinates of a device running the app, and use those coordinates to map out distances from previous locations, time the duration of the distances, and convert those latitude and longitude coordinates into an address. In addition to the requirements, I decided to add a favorite location feature (listing the location where the user spent the most time at), and a MapView in order to visualize the current location of the user.

Technologies/Tools Highlighted

  • Map View module
  • Geocoder
  • onRequestPermissions Module

Screenshots of Application

Coming Soon!

Panda Punch

This project was developed in order to showcase my knowledge in complex java operations and their applications, as well as intents. My knowledge of java operations are exemplified through arithmetic in my Calculator App, but I decided to put them to practical use in the form of a game. Instructed to develop a game similar to the style of the infamous Whack-A-Mole, I utilized various algorithmic techniques in order to develop a grid of icons (filled with drawables of pandas) ready to be "punched." After ornamenting the program with various embelishments (such as haptic feedback, visual timer effects, a trophy count, and high scores), I developed algorithms to power certain aspects of the game (such as random elements popping up, what each element does, how the score is calculated, etc).

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

Dodge Game

This project was developed in order to develop my skills in leveraging sensors built into most Android devices. Utilizing the Gyroscope, Accelerometer, and other sensors of that nature, I developed a game based purely on rotational input: in order to move in-game elements, one must rotate and reposition their device in order for the respective in-game element to follow. In addition to these foundational additions to the game, I added an embelishment that utilizes the devices speaker: background music. Since I was given an extremely short time-span for this project, its user interface is pretty basic, but has scope for additional themes/skins to be implemented later on.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

About

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

Android Projects

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Projects Include:

Outlined below are screenshots of the applications mentioned above, showcasing their UI and functionality.

Calculator App

This project was my first android application, developed in order to showcase my knowledge with basic Java operations (such as parsing text, doing simple math calculations, printing and formatting text, etc). I decided to utilize my knowledge of data structures to store and operate the calculations, helping with the application's efficiency.

Technologies/Tools Highlighted

  • String Tokenizer
  • Stacks
  • Mathematical Operations

Application in Action

Below are screenshots of the application in action:

Application GreetingSimple OperationsOrder of OperationsSpecial OperationsDecimal Operations
scene1scene2scene3scene4scene5

Although the application was not designed for landscape use, it is still functional in that orientation, as illustrated below:

Landscape GreetingLandscape Operations
scene2scene3
rec.mov

Periodic Table App

This project was developed in order to showcase my knowledge with both the ListView module in Android Studio and the Volley module for API requests. After meeting various requirements (such as populating a listview with a certain amount of elements, adding functionality such as images and removing elements to each element of the listview, keeping it's position and listview's population amount after rotation, and showcasing various descriptions and information on each element while selected), I decided to dabble into the realm of API development. Utilizing the expertise from my web-development skills, I developed an API featuring Bowserinator's data, and with the use of the Volley module for Android Studio, I was able to populate the listview with my API calls. I also added a shuffle button to spice up the order of the elements in the list.

An in house API was developed for the project, which can be found here.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Custom API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingSelected Info on ElementManaging/Deleting ElementsShuffling Elements
scene1scene2scene3scene4
Landscape GreetingSelected Info on ElementManaging/Deleting Elements
scene1scene2scene3
rec.mov

Weather App

This project was developed in order to showcase my knowledge with API requests (and fetch GET/POST requests for various APIs). Initially, I was required to implement AsyncTask within the application (a severely outdated module that was depricated within Android API V.29), but it was unsupported for development on my M1 Mac (supporting Android API V.30 or higher). Due to this, I decided to utilize my knowledge with the Volley module (from the Periodic Table App) and develop the application implementing that dependency instead.

I utilized the Open Weathermap API, making 2 seperate API calls: one to translate the inputted zipcode into usable information (longitude and latitude coordinates), and another one to fetch weather data and metadata from the usable information.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingExample FetchExample Fetch 2Example Fetch 3
scene1scene2scene3scene4
weatherAppDemo.mov

Geoencoder Map Visualization App

This project was developed in order to familiarize myself with device permissions. Initially, I was required to utilize specific device permissions in order to access the specific latitude and longitude coordinates of a device running the app, and use those coordinates to map out distances from previous locations, time the duration of the distances, and convert those latitude and longitude coordinates into an address. In addition to the requirements, I decided to add a favorite location feature (listing the location where the user spent the most time at), and a MapView in order to visualize the current location of the user.

Technologies/Tools Highlighted

  • Map View module
  • Geocoder
  • onRequestPermissions Module

Screenshots of Application

Coming Soon!

Panda Punch

This project was developed in order to showcase my knowledge in complex java operations and their applications, as well as intents. My knowledge of java operations are exemplified through arithmetic in my Calculator App, but I decided to put them to practical use in the form of a game. Instructed to develop a game similar to the style of the infamous Whack-A-Mole, I utilized various algorithmic techniques in order to develop a grid of icons (filled with drawables of pandas) ready to be "punched." After ornamenting the program with various embelishments (such as haptic feedback, visual timer effects, a trophy count, and high scores), I developed algorithms to power certain aspects of the game (such as random elements popping up, what each element does, how the score is calculated, etc).

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

Dodge Game

This project was developed in order to develop my skills in leveraging sensors built into most Android devices. Utilizing the Gyroscope, Accelerometer, and other sensors of that nature, I developed a game based purely on rotational input: in order to move in-game elements, one must rotate and reposition their device in order for the respective in-game element to follow. In addition to these foundational additions to the game, I added an embelishment that utilizes the devices speaker: background music. Since I was given an extremely short time-span for this project, its user interface is pretty basic, but has scope for additional themes/skins to be implemented later on.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

About

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Android Projects

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Projects Include:

Outlined below are screenshots of the applications mentioned above, showcasing their UI and functionality.

Calculator App

This project was my first android application, developed in order to showcase my knowledge with basic Java operations (such as parsing text, doing simple math calculations, printing and formatting text, etc). I decided to utilize my knowledge of data structures to store and operate the calculations, helping with the application's efficiency.

Technologies/Tools Highlighted

  • String Tokenizer
  • Stacks
  • Mathematical Operations

Application in Action

Below are screenshots of the application in action:

Application GreetingSimple OperationsOrder of OperationsSpecial OperationsDecimal Operations
scene1scene2scene3scene4scene5

Although the application was not designed for landscape use, it is still functional in that orientation, as illustrated below:

Landscape GreetingLandscape Operations
scene2scene3
rec.mov

Periodic Table App

This project was developed in order to showcase my knowledge with both the ListView module in Android Studio and the Volley module for API requests. After meeting various requirements (such as populating a listview with a certain amount of elements, adding functionality such as images and removing elements to each element of the listview, keeping it's position and listview's population amount after rotation, and showcasing various descriptions and information on each element while selected), I decided to dabble into the realm of API development. Utilizing the expertise from my web-development skills, I developed an API featuring Bowserinator's data, and with the use of the Volley module for Android Studio, I was able to populate the listview with my API calls. I also added a shuffle button to spice up the order of the elements in the list.

An in house API was developed for the project, which can be found here.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Custom API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingSelected Info on ElementManaging/Deleting ElementsShuffling Elements
scene1scene2scene3scene4
Landscape GreetingSelected Info on ElementManaging/Deleting Elements
scene1scene2scene3
rec.mov

Weather App

This project was developed in order to showcase my knowledge with API requests (and fetch GET/POST requests for various APIs). Initially, I was required to implement AsyncTask within the application (a severely outdated module that was depricated within Android API V.29), but it was unsupported for development on my M1 Mac (supporting Android API V.30 or higher). Due to this, I decided to utilize my knowledge with the Volley module (from the Periodic Table App) and develop the application implementing that dependency instead.

I utilized the Open Weathermap API, making 2 seperate API calls: one to translate the inputted zipcode into usable information (longitude and latitude coordinates), and another one to fetch weather data and metadata from the usable information.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingExample FetchExample Fetch 2Example Fetch 3
scene1scene2scene3scene4
weatherAppDemo.mov

Geoencoder Map Visualization App

This project was developed in order to familiarize myself with device permissions. Initially, I was required to utilize specific device permissions in order to access the specific latitude and longitude coordinates of a device running the app, and use those coordinates to map out distances from previous locations, time the duration of the distances, and convert those latitude and longitude coordinates into an address. In addition to the requirements, I decided to add a favorite location feature (listing the location where the user spent the most time at), and a MapView in order to visualize the current location of the user.

Technologies/Tools Highlighted

  • Map View module
  • Geocoder
  • onRequestPermissions Module

Screenshots of Application

Coming Soon!

Panda Punch

This project was developed in order to showcase my knowledge in complex java operations and their applications, as well as intents. My knowledge of java operations are exemplified through arithmetic in my Calculator App, but I decided to put them to practical use in the form of a game. Instructed to develop a game similar to the style of the infamous Whack-A-Mole, I utilized various algorithmic techniques in order to develop a grid of icons (filled with drawables of pandas) ready to be "punched." After ornamenting the program with various embelishments (such as haptic feedback, visual timer effects, a trophy count, and high scores), I developed algorithms to power certain aspects of the game (such as random elements popping up, what each element does, how the score is calculated, etc).

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

Dodge Game

This project was developed in order to develop my skills in leveraging sensors built into most Android devices. Utilizing the Gyroscope, Accelerometer, and other sensors of that nature, I developed a game based purely on rotational input: in order to move in-game elements, one must rotate and reposition their device in order for the respective in-game element to follow. In addition to these foundational additions to the game, I added an embelishment that utilizes the devices speaker: background music. Since I was given an extremely short time-span for this project, its user interface is pretty basic, but has scope for additional themes/skins to be implemented later on.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

About

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Android Projects

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Projects Include:

Outlined below are screenshots of the applications mentioned above, showcasing their UI and functionality.

Calculator App

This project was my first android application, developed in order to showcase my knowledge with basic Java operations (such as parsing text, doing simple math calculations, printing and formatting text, etc). I decided to utilize my knowledge of data structures to store and operate the calculations, helping with the application's efficiency.

Technologies/Tools Highlighted

  • String Tokenizer
  • Stacks
  • Mathematical Operations

Application in Action

Below are screenshots of the application in action:

Application GreetingSimple OperationsOrder of OperationsSpecial OperationsDecimal Operations
scene1scene2scene3scene4scene5

Although the application was not designed for landscape use, it is still functional in that orientation, as illustrated below:

Landscape GreetingLandscape Operations
scene2scene3
rec.mov

Periodic Table App

This project was developed in order to showcase my knowledge with both the ListView module in Android Studio and the Volley module for API requests. After meeting various requirements (such as populating a listview with a certain amount of elements, adding functionality such as images and removing elements to each element of the listview, keeping it's position and listview's population amount after rotation, and showcasing various descriptions and information on each element while selected), I decided to dabble into the realm of API development. Utilizing the expertise from my web-development skills, I developed an API featuring Bowserinator's data, and with the use of the Volley module for Android Studio, I was able to populate the listview with my API calls. I also added a shuffle button to spice up the order of the elements in the list.

An in house API was developed for the project, which can be found here.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Custom API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingSelected Info on ElementManaging/Deleting ElementsShuffling Elements
scene1scene2scene3scene4
Landscape GreetingSelected Info on ElementManaging/Deleting Elements
scene1scene2scene3
rec.mov

Weather App

This project was developed in order to showcase my knowledge with API requests (and fetch GET/POST requests for various APIs). Initially, I was required to implement AsyncTask within the application (a severely outdated module that was depricated within Android API V.29), but it was unsupported for development on my M1 Mac (supporting Android API V.30 or higher). Due to this, I decided to utilize my knowledge with the Volley module (from the Periodic Table App) and develop the application implementing that dependency instead.

I utilized the Open Weathermap API, making 2 seperate API calls: one to translate the inputted zipcode into usable information (longitude and latitude coordinates), and another one to fetch weather data and metadata from the usable information.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingExample FetchExample Fetch 2Example Fetch 3
scene1scene2scene3scene4
weatherAppDemo.mov

Geoencoder Map Visualization App

This project was developed in order to familiarize myself with device permissions. Initially, I was required to utilize specific device permissions in order to access the specific latitude and longitude coordinates of a device running the app, and use those coordinates to map out distances from previous locations, time the duration of the distances, and convert those latitude and longitude coordinates into an address. In addition to the requirements, I decided to add a favorite location feature (listing the location where the user spent the most time at), and a MapView in order to visualize the current location of the user.

Technologies/Tools Highlighted

  • Map View module
  • Geocoder
  • onRequestPermissions Module

Screenshots of Application

Coming Soon!

Panda Punch

This project was developed in order to showcase my knowledge in complex java operations and their applications, as well as intents. My knowledge of java operations are exemplified through arithmetic in my Calculator App, but I decided to put them to practical use in the form of a game. Instructed to develop a game similar to the style of the infamous Whack-A-Mole, I utilized various algorithmic techniques in order to develop a grid of icons (filled with drawables of pandas) ready to be "punched." After ornamenting the program with various embelishments (such as haptic feedback, visual timer effects, a trophy count, and high scores), I developed algorithms to power certain aspects of the game (such as random elements popping up, what each element does, how the score is calculated, etc).

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

Dodge Game

This project was developed in order to develop my skills in leveraging sensors built into most Android devices. Utilizing the Gyroscope, Accelerometer, and other sensors of that nature, I developed a game based purely on rotational input: in order to move in-game elements, one must rotate and reposition their device in order for the respective in-game element to follow. In addition to these foundational additions to the game, I added an embelishment that utilizes the devices speaker: background music. Since I was given an extremely short time-span for this project, its user interface is pretty basic, but has scope for additional themes/skins to be implemented later on.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

About

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

Android Projects

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Projects Include:

Outlined below are screenshots of the applications mentioned above, showcasing their UI and functionality.

Calculator App

This project was my first android application, developed in order to showcase my knowledge with basic Java operations (such as parsing text, doing simple math calculations, printing and formatting text, etc). I decided to utilize my knowledge of data structures to store and operate the calculations, helping with the application's efficiency.

Technologies/Tools Highlighted

  • String Tokenizer
  • Stacks
  • Mathematical Operations

Application in Action

Below are screenshots of the application in action:

Application GreetingSimple OperationsOrder of OperationsSpecial OperationsDecimal Operations
scene1scene2scene3scene4scene5

Although the application was not designed for landscape use, it is still functional in that orientation, as illustrated below:

Landscape GreetingLandscape Operations
scene2scene3
rec.mov

Periodic Table App

This project was developed in order to showcase my knowledge with both the ListView module in Android Studio and the Volley module for API requests. After meeting various requirements (such as populating a listview with a certain amount of elements, adding functionality such as images and removing elements to each element of the listview, keeping it's position and listview's population amount after rotation, and showcasing various descriptions and information on each element while selected), I decided to dabble into the realm of API development. Utilizing the expertise from my web-development skills, I developed an API featuring Bowserinator's data, and with the use of the Volley module for Android Studio, I was able to populate the listview with my API calls. I also added a shuffle button to spice up the order of the elements in the list.

An in house API was developed for the project, which can be found here.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Custom API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingSelected Info on ElementManaging/Deleting ElementsShuffling Elements
scene1scene2scene3scene4
Landscape GreetingSelected Info on ElementManaging/Deleting Elements
scene1scene2scene3
rec.mov

Weather App

This project was developed in order to showcase my knowledge with API requests (and fetch GET/POST requests for various APIs). Initially, I was required to implement AsyncTask within the application (a severely outdated module that was depricated within Android API V.29), but it was unsupported for development on my M1 Mac (supporting Android API V.30 or higher). Due to this, I decided to utilize my knowledge with the Volley module (from the Periodic Table App) and develop the application implementing that dependency instead.

I utilized the Open Weathermap API, making 2 seperate API calls: one to translate the inputted zipcode into usable information (longitude and latitude coordinates), and another one to fetch weather data and metadata from the usable information.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingExample FetchExample Fetch 2Example Fetch 3
scene1scene2scene3scene4
weatherAppDemo.mov

Geoencoder Map Visualization App

This project was developed in order to familiarize myself with device permissions. Initially, I was required to utilize specific device permissions in order to access the specific latitude and longitude coordinates of a device running the app, and use those coordinates to map out distances from previous locations, time the duration of the distances, and convert those latitude and longitude coordinates into an address. In addition to the requirements, I decided to add a favorite location feature (listing the location where the user spent the most time at), and a MapView in order to visualize the current location of the user.

Technologies/Tools Highlighted

  • Map View module
  • Geocoder
  • onRequestPermissions Module

Screenshots of Application

Coming Soon!

Panda Punch

This project was developed in order to showcase my knowledge in complex java operations and their applications, as well as intents. My knowledge of java operations are exemplified through arithmetic in my Calculator App, but I decided to put them to practical use in the form of a game. Instructed to develop a game similar to the style of the infamous Whack-A-Mole, I utilized various algorithmic techniques in order to develop a grid of icons (filled with drawables of pandas) ready to be "punched." After ornamenting the program with various embelishments (such as haptic feedback, visual timer effects, a trophy count, and high scores), I developed algorithms to power certain aspects of the game (such as random elements popping up, what each element does, how the score is calculated, etc).

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

Dodge Game

This project was developed in order to develop my skills in leveraging sensors built into most Android devices. Utilizing the Gyroscope, Accelerometer, and other sensors of that nature, I developed a game based purely on rotational input: in order to move in-game elements, one must rotate and reposition their device in order for the respective in-game element to follow. In addition to these foundational additions to the game, I added an embelishment that utilizes the devices speaker: background music. Since I was given an extremely short time-span for this project, its user interface is pretty basic, but has scope for additional themes/skins to be implemented later on.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

About

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Android Projects

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Projects Include:

Outlined below are screenshots of the applications mentioned above, showcasing their UI and functionality.

Calculator App

This project was my first android application, developed in order to showcase my knowledge with basic Java operations (such as parsing text, doing simple math calculations, printing and formatting text, etc). I decided to utilize my knowledge of data structures to store and operate the calculations, helping with the application's efficiency.

Technologies/Tools Highlighted

  • String Tokenizer
  • Stacks
  • Mathematical Operations

Application in Action

Below are screenshots of the application in action:

Application GreetingSimple OperationsOrder of OperationsSpecial OperationsDecimal Operations
scene1scene2scene3scene4scene5

Although the application was not designed for landscape use, it is still functional in that orientation, as illustrated below:

Landscape GreetingLandscape Operations
scene2scene3
rec.mov

Periodic Table App

This project was developed in order to showcase my knowledge with both the ListView module in Android Studio and the Volley module for API requests. After meeting various requirements (such as populating a listview with a certain amount of elements, adding functionality such as images and removing elements to each element of the listview, keeping it's position and listview's population amount after rotation, and showcasing various descriptions and information on each element while selected), I decided to dabble into the realm of API development. Utilizing the expertise from my web-development skills, I developed an API featuring Bowserinator's data, and with the use of the Volley module for Android Studio, I was able to populate the listview with my API calls. I also added a shuffle button to spice up the order of the elements in the list.

An in house API was developed for the project, which can be found here.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Custom API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingSelected Info on ElementManaging/Deleting ElementsShuffling Elements
scene1scene2scene3scene4
Landscape GreetingSelected Info on ElementManaging/Deleting Elements
scene1scene2scene3
rec.mov

Weather App

This project was developed in order to showcase my knowledge with API requests (and fetch GET/POST requests for various APIs). Initially, I was required to implement AsyncTask within the application (a severely outdated module that was depricated within Android API V.29), but it was unsupported for development on my M1 Mac (supporting Android API V.30 or higher). Due to this, I decided to utilize my knowledge with the Volley module (from the Periodic Table App) and develop the application implementing that dependency instead.

I utilized the Open Weathermap API, making 2 seperate API calls: one to translate the inputted zipcode into usable information (longitude and latitude coordinates), and another one to fetch weather data and metadata from the usable information.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingExample FetchExample Fetch 2Example Fetch 3
scene1scene2scene3scene4
weatherAppDemo.mov

Geoencoder Map Visualization App

This project was developed in order to familiarize myself with device permissions. Initially, I was required to utilize specific device permissions in order to access the specific latitude and longitude coordinates of a device running the app, and use those coordinates to map out distances from previous locations, time the duration of the distances, and convert those latitude and longitude coordinates into an address. In addition to the requirements, I decided to add a favorite location feature (listing the location where the user spent the most time at), and a MapView in order to visualize the current location of the user.

Technologies/Tools Highlighted

  • Map View module
  • Geocoder
  • onRequestPermissions Module

Screenshots of Application

Coming Soon!

Panda Punch

This project was developed in order to showcase my knowledge in complex java operations and their applications, as well as intents. My knowledge of java operations are exemplified through arithmetic in my Calculator App, but I decided to put them to practical use in the form of a game. Instructed to develop a game similar to the style of the infamous Whack-A-Mole, I utilized various algorithmic techniques in order to develop a grid of icons (filled with drawables of pandas) ready to be "punched." After ornamenting the program with various embelishments (such as haptic feedback, visual timer effects, a trophy count, and high scores), I developed algorithms to power certain aspects of the game (such as random elements popping up, what each element does, how the score is calculated, etc).

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

Dodge Game

This project was developed in order to develop my skills in leveraging sensors built into most Android devices. Utilizing the Gyroscope, Accelerometer, and other sensors of that nature, I developed a game based purely on rotational input: in order to move in-game elements, one must rotate and reposition their device in order for the respective in-game element to follow. In addition to these foundational additions to the game, I added an embelishment that utilizes the devices speaker: background music. Since I was given an extremely short time-span for this project, its user interface is pretty basic, but has scope for additional themes/skins to be implemented later on.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

About

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

Android Projects

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Projects Include:

Outlined below are screenshots of the applications mentioned above, showcasing their UI and functionality.

Calculator App

This project was my first android application, developed in order to showcase my knowledge with basic Java operations (such as parsing text, doing simple math calculations, printing and formatting text, etc). I decided to utilize my knowledge of data structures to store and operate the calculations, helping with the application's efficiency.

Technologies/Tools Highlighted

  • String Tokenizer
  • Stacks
  • Mathematical Operations

Application in Action

Below are screenshots of the application in action:

Application GreetingSimple OperationsOrder of OperationsSpecial OperationsDecimal Operations
scene1scene2scene3scene4scene5

Although the application was not designed for landscape use, it is still functional in that orientation, as illustrated below:

Landscape GreetingLandscape Operations
scene2scene3
rec.mov

Periodic Table App

This project was developed in order to showcase my knowledge with both the ListView module in Android Studio and the Volley module for API requests. After meeting various requirements (such as populating a listview with a certain amount of elements, adding functionality such as images and removing elements to each element of the listview, keeping it's position and listview's population amount after rotation, and showcasing various descriptions and information on each element while selected), I decided to dabble into the realm of API development. Utilizing the expertise from my web-development skills, I developed an API featuring Bowserinator's data, and with the use of the Volley module for Android Studio, I was able to populate the listview with my API calls. I also added a shuffle button to spice up the order of the elements in the list.

An in house API was developed for the project, which can be found here.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Custom API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingSelected Info on ElementManaging/Deleting ElementsShuffling Elements
scene1scene2scene3scene4
Landscape GreetingSelected Info on ElementManaging/Deleting Elements
scene1scene2scene3
rec.mov

Weather App

This project was developed in order to showcase my knowledge with API requests (and fetch GET/POST requests for various APIs). Initially, I was required to implement AsyncTask within the application (a severely outdated module that was depricated within Android API V.29), but it was unsupported for development on my M1 Mac (supporting Android API V.30 or higher). Due to this, I decided to utilize my knowledge with the Volley module (from the Periodic Table App) and develop the application implementing that dependency instead.

I utilized the Open Weathermap API, making 2 seperate API calls: one to translate the inputted zipcode into usable information (longitude and latitude coordinates), and another one to fetch weather data and metadata from the usable information.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingExample FetchExample Fetch 2Example Fetch 3
scene1scene2scene3scene4
weatherAppDemo.mov

Geoencoder Map Visualization App

This project was developed in order to familiarize myself with device permissions. Initially, I was required to utilize specific device permissions in order to access the specific latitude and longitude coordinates of a device running the app, and use those coordinates to map out distances from previous locations, time the duration of the distances, and convert those latitude and longitude coordinates into an address. In addition to the requirements, I decided to add a favorite location feature (listing the location where the user spent the most time at), and a MapView in order to visualize the current location of the user.

Technologies/Tools Highlighted

  • Map View module
  • Geocoder
  • onRequestPermissions Module

Screenshots of Application

Coming Soon!

Panda Punch

This project was developed in order to showcase my knowledge in complex java operations and their applications, as well as intents. My knowledge of java operations are exemplified through arithmetic in my Calculator App, but I decided to put them to practical use in the form of a game. Instructed to develop a game similar to the style of the infamous Whack-A-Mole, I utilized various algorithmic techniques in order to develop a grid of icons (filled with drawables of pandas) ready to be "punched." After ornamenting the program with various embelishments (such as haptic feedback, visual timer effects, a trophy count, and high scores), I developed algorithms to power certain aspects of the game (such as random elements popping up, what each element does, how the score is calculated, etc).

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

Dodge Game

This project was developed in order to develop my skills in leveraging sensors built into most Android devices. Utilizing the Gyroscope, Accelerometer, and other sensors of that nature, I developed a game based purely on rotational input: in order to move in-game elements, one must rotate and reposition their device in order for the respective in-game element to follow. In addition to these foundational additions to the game, I added an embelishment that utilizes the devices speaker: background music. Since I was given an extremely short time-span for this project, its user interface is pretty basic, but has scope for additional themes/skins to be implemented later on.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

About

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

Android Projects

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Projects Include:

Outlined below are screenshots of the applications mentioned above, showcasing their UI and functionality.

Calculator App

This project was my first android application, developed in order to showcase my knowledge with basic Java operations (such as parsing text, doing simple math calculations, printing and formatting text, etc). I decided to utilize my knowledge of data structures to store and operate the calculations, helping with the application's efficiency.

Technologies/Tools Highlighted

  • String Tokenizer
  • Stacks
  • Mathematical Operations

Application in Action

Below are screenshots of the application in action:

Application GreetingSimple OperationsOrder of OperationsSpecial OperationsDecimal Operations
scene1scene2scene3scene4scene5

Although the application was not designed for landscape use, it is still functional in that orientation, as illustrated below:

Landscape GreetingLandscape Operations
scene2scene3
rec.mov

Periodic Table App

This project was developed in order to showcase my knowledge with both the ListView module in Android Studio and the Volley module for API requests. After meeting various requirements (such as populating a listview with a certain amount of elements, adding functionality such as images and removing elements to each element of the listview, keeping it's position and listview's population amount after rotation, and showcasing various descriptions and information on each element while selected), I decided to dabble into the realm of API development. Utilizing the expertise from my web-development skills, I developed an API featuring Bowserinator's data, and with the use of the Volley module for Android Studio, I was able to populate the listview with my API calls. I also added a shuffle button to spice up the order of the elements in the list.

An in house API was developed for the project, which can be found here.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Custom API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingSelected Info on ElementManaging/Deleting ElementsShuffling Elements
scene1scene2scene3scene4
Landscape GreetingSelected Info on ElementManaging/Deleting Elements
scene1scene2scene3
rec.mov

Weather App

This project was developed in order to showcase my knowledge with API requests (and fetch GET/POST requests for various APIs). Initially, I was required to implement AsyncTask within the application (a severely outdated module that was depricated within Android API V.29), but it was unsupported for development on my M1 Mac (supporting Android API V.30 or higher). Due to this, I decided to utilize my knowledge with the Volley module (from the Periodic Table App) and develop the application implementing that dependency instead.

I utilized the Open Weathermap API, making 2 seperate API calls: one to translate the inputted zipcode into usable information (longitude and latitude coordinates), and another one to fetch weather data and metadata from the usable information.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Application in Action

Below are screenshots of the application in action:

Application GreetingExample FetchExample Fetch 2Example Fetch 3
scene1scene2scene3scene4
weatherAppDemo.mov

Geoencoder Map Visualization App

This project was developed in order to familiarize myself with device permissions. Initially, I was required to utilize specific device permissions in order to access the specific latitude and longitude coordinates of a device running the app, and use those coordinates to map out distances from previous locations, time the duration of the distances, and convert those latitude and longitude coordinates into an address. In addition to the requirements, I decided to add a favorite location feature (listing the location where the user spent the most time at), and a MapView in order to visualize the current location of the user.

Technologies/Tools Highlighted

  • Map View module
  • Geocoder
  • onRequestPermissions Module

Screenshots of Application

Coming Soon!

Panda Punch

This project was developed in order to showcase my knowledge in complex java operations and their applications, as well as intents. My knowledge of java operations are exemplified through arithmetic in my Calculator App, but I decided to put them to practical use in the form of a game. Instructed to develop a game similar to the style of the infamous Whack-A-Mole, I utilized various algorithmic techniques in order to develop a grid of icons (filled with drawables of pandas) ready to be "punched." After ornamenting the program with various embelishments (such as haptic feedback, visual timer effects, a trophy count, and high scores), I developed algorithms to power certain aspects of the game (such as random elements popping up, what each element does, how the score is calculated, etc).

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

Dodge Game

This project was developed in order to develop my skills in leveraging sensors built into most Android devices. Utilizing the Gyroscope, Accelerometer, and other sensors of that nature, I developed a game based purely on rotational input: in order to move in-game elements, one must rotate and reposition their device in order for the respective in-game element to follow. In addition to these foundational additions to the game, I added an embelishment that utilizes the devices speaker: background music. Since I was given an extremely short time-span for this project, its user interface is pretty basic, but has scope for additional themes/skins to be implemented later on.

Technologies/Tools Highlighted

  • ListView Module
  • Volley Module
  • Open Weathermap API
  • JSONObject/JSONArray

Screenshots of Application

Coming Soon!

About

A compilation of projects completed in my CS Topics: Mobile App Development Class.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages