What should I study?

Asked

Viewed 134 times

-1

I wanted to make an application for android where I can send a photo and everyone who has this app have access to this photo and be able to evaluate it with a wanted note, my doubt is what I must study to be able to make an app like this. Thank you

ps:I have already made an app for android, a matrix calculator.

  • Study Java first and then pick up an Android book. When you have more specific questions, you are welcome to come back here and publish them.

  • blz, thank you so much!

  • 2

    Unfortunately, it’s a complicated question, because there are a thousand different ways of doing what you want. Divide the problem into independent steps, and solve each one separately. Example: how to take a photo with the application, how to send and receive data to your system, how third parties will access photos from your system, etc.

1 answer

4

Let me give you an example of a possible way to do it, so you have an idea of what you need to learn (in addition to the basics of Java and Android):

Photos and their notes need to be stored somewhere. Usually in tables of a database (Mysql or Postgresql, to name two of the most popular and free). This involves learning the basics of sql language.

(Instead of directly saving the binary data that represents the photo in a BLOB field, you can alternatively save these photos in files and save the paths of those files in the database table. You choose who).

The database usually stays on a remote machine connected to the Internet and called server. You could access the tables directly from the mobile but this is not the correct way to do; the most correct is the mobile call Web Services, which are basically Urls that when called execute code on the server that accesses the database and return this data in the Web Service’s own response. So there’s a few more things to study: Web Services (and also the basic protocol HTTP, if you want to know how they work under the table) and a programming language to write these Web Services, which may be the Java, if you don’t want to study PHP, Javascript or some other.

(Some additional details: these Web Services run in an environment called application server, which in the case of Java may be for example the Tomcat. The application server can be on the "server" machine that I mentioned earlier and where is also the bank. As we live in cloud times, there are several free services that allow you to create a remote (virtual) machine where you can run an application server and database at no cost. As for writing Web Services, I don’t have much experience creating them with tools, I think people use something called JAX-RS. And for the Web Service code to communicate with the bank, it will be used JDBC. Ah, and to transmit small data organizations through the Web Service, for example the notes of a photo, it is good you study the data format JSON).

On Android, to call Web Services, you will need to study Asynctasks, so that your application does not lock the screen while calling the Web Service, which in turn can be called using a library such as Okhttp square. And, in case the mobile takes very large photos that take up a lot of device memory (RAM, not storage memory) and also for the sake of reducing the volume of data to transmit, you will have to learn how to reduce the size of Bitmaps which contain the photos before transmitting them.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.