Number: 002, Date: 2024-01-15

2024.01.08 ~ 2024.01.14

⚙️ Considerations When the App Entry Screen Changes


For example, if the initial entry screen in a project is HomeViewController, business logic would be implemented on that screen.

However, if the initial entry screen changes, some logic may need to be moved to the front end.

Initially, I thought it was just a matter of changing the initial home screen, so I proceeded with estimating the development effort, but I realized there were many aspects to consider, so I decided to always consider more when the initial entry home screen changes.

For example, as push notifications and sockets that receive global communication move to the front end, new objects had to be created, and there were many tasks to modify logic that analyzes based on the currently displayed screen.

📷 Saving the Current Screen as an Image, Preventing Screen Capture


To implement a feature that saves the screen the user is currently viewing as an image when a button is clicked, follow these steps:

  1. Obtain photo album permission
  2. Convert UIView to UIImage
  3. Use UIImageWriteToSavedPhotosAlbum to save the converted UIImage to the photo album

ScreenShot(Save, Share) is well-organized and good for reference in order.

Additionally, can iOS prevent users from capturing the screen?

If a user wants to save a specific screen of the app, they will either record the screen (click screen record) or capture the screen (volume down button + power button).

By default, Apple does not support capture prevention, but it provides capturedDidChangeNotification during screen recording and userDidTakeScreenshotNotification when a screenshot is taken to provide timing.

At that time, you can use methods like UITextField isSecureTextEntry.

Also, libraries are available if you search, so the conclusion is iOS does not officially support capture prevention, but it is possible to implement.

iOS App Screen Capture/Recording Prevention is a good reference.

👨 Interview with a Senior Developer


I had an interview with a senior developer and talked at a cafe.

We talked about various things, and I organized the memorable parts one by one.

  1. He recommended using Codility for coding test preparation because it allows you to prepare for problems presented in English and he thinks the quality of the problems is good.
  2. From the perspective of a mobile app developer, he recommended looking into Flutter as it seems to have a promising future.
  3. Although it may be a distant story, he mentioned that going to a startup and experiencing building a big tech company is possible, and he recommended gaining lead experience as a developer to live as a developer. He thought the end of a developer’s career is becoming a CTO.
  4. While focusing on one domain is good, he said experiencing various domains to broaden your perspective is also beneficial, and experiencing traffic increase is very helpful.