This time, I thought about publishing the source code of the application for the following reasons.
- I want many people to see the application I made.
- I want to hear opinions of various people.
- I would like to help those who make apps by sharing code.
I hope this article will be useful to everyone 😃
It is a news application for 20s to 30s (mainly men) who are setting up antennas for gathering information on latest services and technologies.
※ I made the name that imagined an innovator (innovator).
You can see latest news by genre and user's reaction.
Moreover, because there is a news read-out function, you can also check news while walking.
You can check various genres of news on the top page of the application.
Tap on the news to change the genre with the detail screen, horizontal swipe.
After long press of the news, start reading aloud from the place where the news was selected with "tap from this position" tap.
You can check the details of the news.
From this screen you can check tweets about news clips and news on display.
You can check tweets about selected news from the list.
You can tweet by pressing tweet button.
You can search past news.
You can check the weather forecast of the current location and change the settings of the application.
First of all, I access the following URL.
Install the library using the following cocoaPods.
Please refer to another article how to install cocoaPods.
After installing cocoaPods open the terminal, go to the Innovy-master folder, enter the
pod install command and wait until the library installation is over.
After installing the library, open the Innovy - master folder and open
Recommended environment: XCode 9.3
After opening XCode, select the appropriate terminal with
iOS Simulators and press the
Successful when simulator & application starts.
Of course, if you set Provisioning Profile, it is also possible to operate in real machine.
Firebase plist, API key for API with limit of number of times etc. are masked, so some are not displayed.
If you contact us separately, we will pass items that are masked 🙃
- However, I will limit it to those who are clear on their identity (on Facebook etc.).
Innovy adopts MVVM (Model-View-ViewModel) as the architectural pattern?
For example, when the user performs the operation of reacquiring the latest news on the news list screen (pulls the screen upward), it moves as follows.
NewsListViewControllerin code as
View detects? Update operation by user
View requests update process to
Model to acquire news list
Model uses the news list acquisition API to acquire the latest news
ViewModel of completion of news acquisition
⑥. Create data for
View display based on the news list
ViewModel obtained from
View of completion of data creation
View updates screen based on
So the latest news information is reflected in the application 😉
Since it is possible to acquire the image file name and the Storyboard name as properties, it prevents errors due to typing errors.
Image file name, alert message ?, xib name etc used everywhere.
A library for facilitating HTTP communication.
Everyone is using it for iOS application development that communicates, is not it?
Used in the API communication part.
Just specifying a URL for UIImageView will display the image, loading display, cache it will cache.
Used in the display portion of the article image.
A library that parses Json.
Used in the place to retrieve Json acquired by API for use inside the application.
Application version database.
The data access syntax is very easy to understand.
Used for storing article information.
A library that makes it easy to create an inquiry screen.
Used on the inquiry screen.
A library for displaying indicators representing processing in front of the screen.
Used while acquiring article information.
A library that collects crash reports when crashing applications.
Set at startup.
Application general search library such as application usage survey, crash report viewing, push notification?
Set at startup.
A library for displaying advertisements.
Used when displaying articles.
API for retrieving article information?
Used when displaying the list.
API for getting genre information?
Genres include "startup", "service", "design" and others.
Used at startup.
API to add the number of times you saw the article details.
Tap any article from the article list and use it at the timing of opening the article details.
By this, when you display the article you can display "other people ○ people are paying attention to this article!"?
API to acquire tweet information from Twitter to acquire
Article detail screen? When you tap the tweet button at the bottom, a tweet list is displayed, but it is used when acquiring the list.
API for getting weather information.
By specifying latitude and longitude, weather information of the place can be acquired.
Used when displaying weather information displayed on the setting screen.
? API for obtaining location information.
If you specify latitude and longitude, you can obtain the address of that place in Japanese.
Since weather information API can only obtain addresses in English, we will separately obtain addresses using this API.
Used with weather information API.
At the end
How was that.
Read this article and open your iOS application