CATEGORY

OJapp Dev Log

What I Learned by Using a Nonexistent URL: iPhone’s Hidden Home Screen Icon Behavior

Hi, I’m Ojach. I built a feature in my test lab, “PWA LAB,” that allows me to freely change the installation URL. The goal was simple: I wanted a place to try out, in real-time, how a PWA actually looks when added to the home screen. Validating PWAs often comes down to these small, gritty experiments. Especially with maskable icons, where the differences in how Android and iOS handle cropping can change everything. Reading the spec sheet 100 times can’t compare to the moment you break your own code on a real device and finally “get it.” Every developer has been there. That’s exactly what happened this time. To be honest, it was just a simple URL typo. But that “oops” moment led me to discover some fascinating, undocumented behaviors regarding iPhone home screen icons. I just had to share this. Validating the “Broken State” The setup was incredibly simple. I used my PWA LAB to intentionally set an “invalid, non-existent URL” as the installation target. Then, I hit “Add to Home Screen” on both Android (Chrome) and iPhone (Safari) to see what would happen. I was curious about a few things: – Can you even add a non-existent URL […]

The manifest.json id Trap: How to Avoid Duplicate PWA Install Problems

The manifest.json id Trap: How to Avoid Duplicate PWA Install Problems In a PWA manifest, there is a field called id. When you first start building PWAs, you usually focus on name, start_url, display, and icons. To be honest, because a PWA can work without id, it is easy to think, “Do I really need this?” But when you want to handle multiple PWAs on the same domain, or generate app-like entries for each user, this id field can suddenly become a huge wall. After a lot of rough testing in PWA LAB, I ended up with one very simple pattern: remove id and use start_url: ".". This article explains why that can help when you want multiple PWA-style icons from the same domain. What is the manifest.json id? id is the value used to identify a PWA. The browser uses it to decide whether the app being installed is the same app as one already installed, or a completely new app. In other words, it is like a name tag for the PWA. If the browser thinks the PWA has the same identity, it may treat it as an update to an existing app instead of a new install. […]

Why I Built PWA LAB: A Simple Place to Test Real PWA Behavior

Why I Built PWA LAB: A Simple Place to Test Real PWA Behavior Why I built PWA LAB While working with PWA behavior and home screen support in OJapp, I kept thinking the same thing. Reading the specification is not enough to understand how it actually behaves. Write a manifest.json, register a Service Worker, set display to standalone, and the site should open like an app. As an explanation, that sounds correct. But when I actually tested it on iPhone and Android, it was not that simple. That is why I built OJapp PWA LAB. PWA LAB is an experiment page for testing PWA settings and status while actually seeing what is happening. Even if you write it by the book, it may not behave the same way A PWA can be made with HTML, manifest.json, and a Service Worker. But in real use, the behavior changes a lot depending on the browser and OS. Something may work well in Android Chrome but not behave as expected in iPhone Safari. Something may look fine on desktop Chrome but appear differently on mobile. The Service Worker may be ACTIVE, but the page may still fail to display correctly offline. These things […]

Why Can’t I Save Images on iPhone? Fix Long Press Not Working (2026 Guide)

Why Can’t I Save Images on iPhone? Fix Long Press Not Working (2026 Guide) “Why can’t I save images on my iPhone?” If you’ve ever tried to save an image from a website and it didn’t work, you’re not alone. Nothing happens when you long press No “Save Image” option appears The image is saved, but you can’t find it The truth is simple: There isn’t just one reason. There are multiple causes—and each requires a different fix. This guide will help you identify the problem and fix it step by step. First: What’s Your Situation? Before trying random fixes, find the situation that matches yours: A: Long press does nothing B: No “Save Image” option appears C: Image is saved but not found D: You’re using an in-app browser (Twitter/X, Instagram, etc.) Jump to the section that matches your issue. A: Long Press Not Working If nothing happens when you press and hold an image, here are the common reasons: 1. The website blocks image saving Some websites intentionally disable long press to prevent copying or downloading images. In this case, there is no direct way to bypass it. 2. It’s not actually an image What looks like an […]

OJapp Splitter Mobile Guide: How to Cleanly Split Photos on Your Phone (Square & 3:4 Only)

OJapp Splitter Mobile Guide: How to Cleanly Split Photos on Your Phone (Square & 3:4 Only) OJapp Splitter is a lightweight web tool designed to split photos on smartphones using only two essential aspect ratios: Square and 3:4. No app installation is required, and the entire process runs on your device, making it fast, private, and easy to use. This guide explains how to make the most of Splitter on your phone. Why OJapp Splitter Uses Only “Square” and “3:4” Unlike many image-editing apps that offer every possible aspect ratio, OJapp Splitter intentionally limits the options to two: Square: Ideal for icons, SNS thumbnails, profile photos 3:4: Matches almost all smartphone photos and feels natural These two ratios cover more than 80% of real-world mobile use cases, allowing the tool to stay fast, simple, and high quality. 4 Practical Mobile Use Cases for OJapp Splitter 1. Create perfectly aligned Instagram posts Instagram looks simple, but its automatic cropping is strict and often unpredictable. Using the 3:4 ratio keeps compositions stable and prevents accidental cropping. With OJapp Splitter, you can easily create: 3-split vertical posts 6-split tall layouts Your images will stay aligned when previewed on your feed, reducing the “why […]

>OJapp Tips

OJapp Tips

PWA開発やWebデザインの現場で使える実践的なノウハウをお届けする「OJapp tips」。iOS特有の挙動ハックからmanifest.jsonの緻密な設計まで、ツール開発者が実機検証(PWA LAB)を繰り返して得た泥臭いリアルな知見を発信中。

私たちが運営する「Petal」は、その仕組みを使って“人のページを名刺のように持つ”ためのミニマルなSNS。QRからすぐ開けて、ログインなしでも見れる。でも、必要なときだけつながれる。そんな「弱いつながり」を未来へ残すために作られています。