Inspiration
On May 25th, an infamous day where an unarmed, nonresisting African American was forcefully murdered by police in Minneapolis sparked both a nationwide protest and our determination to help the social justice cause.
We did more research and learned that roughly 90% of court cases involving police and civilians lack video evidence. This is usually because it was unrecorded, lost, or tampered with. We also learned that the police who killed Philando Castile was not convicted because there was not video recording from inside the car that proved the shooting was completely unprovoked.
This made us convinced we needed to build an app that makes it easier to record police.
What it does
Our app allows users to live-stream video and audio evidence to a secure cloud database with simple click of a button.
Copcam then automatically notifies emergency contacts that their loved ones are encountering police via SMS. It includes their location and a link to view the livestream in real time.
The app logs the location and time when the recording was started to our backend analytics tool. This effectively allows civilians and researchers to create crowdsourced policing data.
How we built it
We used Android Studios, java, and xml to build the app. Youtube’s databases store the videos our users livestream. We use firebase analytics to log user data in our Google cloud accounts.
We utilized the YouTubeApi to create the livestreams, Geocoder and LocationManager to access the user’s location for logging purposes, SmsManager to send automatic messages to emergency contacts, GoogleAccount authentication APIs.
Challenges we ran into
The main issue was where to host the live stream videos. Since this project is not meant to make any money, we needed to have a way to store it with no cost to us. Luckily, by implementing YouTube live streaming we were able to find the perfect solution, that’s both accessible and free.
There were also a host of coding issues that popped up when trying to implement the increasing number of features we had, including: instant text messaging, location saving, retrieving emergency contacts, adding a custom message, and dimming the screen.
On top of this we had to add numerous redundancies to the app so it would be able to handle different situational errors, including: poor internet connection, errors connecting to YouTube, incomplete or inaccurate set-up, or disruptions mid-stream.
Accomplishments that we're proud of
First-of-its-kind app that allows people to have evidence BEFORE the incident. Unlike other apps, with one touch, users can have full functionality. This way, even if the worst happens to the user, their loved ones will already know where they are and what’s happening to them, as well as have the evidence to act on it.
We are also proud to have figured out a sustainable model that allows us to freely make the live streaming accessible to everyone through hosting on YouTube.
We are also proud to say we have reached out to members of numerous social justice organizations and universities, including the ACLU, NAACP, and Harvard University, and received their positive feedback for the app we have built.
What we learned
In this process, we got to become more familiar with android studios and building mobile applications. We gained more experience with using third party APIs to build more complex apps. We also learned how to utilize analytics tools to perform useful tasks.
We also learned about the problem of police brutality itself through talking to various employees of social justice organizations and university professors.
What's next for Copcam
We are working on publishing the beta version of the app to the Google play store.
We are also seeking to get more target users as beta testers to get their feedback. Afterwards, we will start a mass-marketing campaign through leveraging our connections to the ACLU, NAACP, and various universities.
We are also working on building a digital map that interactively displays all of the crowdsource data that we’ve already begun to collect on police encounters.

Log in or sign up for Devpost to join the conversation.