<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel><title>ブログ｜アステロイドテクノロジー</title><link>https://asteroid-technology.com/astech-blog/</link><description>アステロイドテクノロジーのブログ。アプリ開発、Web広告、業務の自動化、ホームページ制作、サーバーの仕事で、困ったこと、原因を調べたこと、決めたことを、設計から実装の手順まで記録しています。</description><language>ja</language><lastBuildDate>Mon, 19 Oct 2026 00:00:00 +0900</lastBuildDate><atom:link href="https://asteroid-technology.com/astech-blog/feed.xml" rel="self" type="application/rss+xml"/>
<item><title>Search Console の「インデックスに登録されなかった理由」4つの読み方：404・リダイレクト・クロール済み・検出</title><link>https://asteroid-technology.com/astech-blog/search-console-not-indexed-reasons-404-redirect-crawled/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/search-console-not-indexed-reasons-404-redirect-crawled/</guid><pubDate>Mon, 19 Oct 2026 00:00:00 +0900</pubDate><category>ホームページ制作</category><description>WordPress から静的サイトに切り替えて数日で、Search Console に「見つかりませんでした（404）」「ページにリダイレクトがあります」「クロール済み - インデックス未登録」「検出 - インデックス未登録」が出ました。直すものと、直さなくてよいものの見分け方です。</description></item>
<item><title>SwiftUI の画面を開くと落ちる：EXC_BAD_ACCESS の原因は、ビューの型が深すぎて「スタックを使い切る」ことだった</title><link>https://asteroid-technology.com/astech-blog/swiftui-crash-stack-exhaustion-view-depth/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/swiftui-crash-stack-exhaustion-view-depth/</guid><pubDate>Fri, 16 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>SwiftUI のアプリで、特定の画面を実機で開くと EXC_BAD_ACCESS で落ちました。原因は、1つの body に詰め込みすぎてビューの型が深くなり、型の情報を組み立てるだけでメインスレッドのスタックを使い切ることでした。2つのアプリで同じことが起きた記録と、直し方、再現のしかたを書きます。</description></item>
<item><title>「わかりやすく言い換える」と検索されない：Search Console の3日分で分かったこと</title><link>https://asteroid-technology.com/astech-blog/search-console-paraphrase-not-searched/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/search-console-paraphrase-not-searched/</guid><pubDate>Fri, 16 Oct 2026 00:00:00 +0900</pubDate><category>ホームページ制作</category><description>Search Console に登録して3日分のデータを見ると、ブログの記事は公開1〜2日で7〜9位に出ていたのに、ほとんどクリックされませんでした。原因は、専門用語を言い換えていたこと。タイトルと最初の段落を直した記録です。</description></item>
<item><title>Gemini の構造化出力が MAX_TOKENS と 400 で失敗し続けた：thinking でも音声形式でもなく、response_schema が原因だった</title><link>https://asteroid-technology.com/astech-blog/gemini-max-tokens-and-400-invalid-argument/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/gemini-max-tokens-and-400-invalid-argument/</guid><pubDate>Fri, 16 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>Gemini API で、採点が MAX_TOKENS で失敗し続け、音声の文字起こしが 400 INVALID_ARGUMENT で失敗し続けました。どちらも最初の見立ては外れ、本当の原因は response_schema（JSON の出力の形の指定）でした。2026年9月13日と14日に測ったことと、切り分けの手順を書きます。</description></item>
<item><title>Mac のターミナル（zsh）で &quot;$ID:w&quot; の :w が消える：変数の後ろの「:」は加工の記号</title><link>https://asteroid-technology.com/astech-blog/zsh-variable-colon-modifier/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/zsh-variable-colon-modifier/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>サーバー・インフラ</category><description>Mac のターミナル（zsh）で &quot;$ID:wrong-password&quot; を curl に渡したら、ID の後ろが ong-password になりました。zsh では、変数名のすぐ後ろの :w や :r が修飾子（modifier。変数を加工する記号）として読まれます。${ID} のように { } で囲むと防げます。</description></item>
<item><title>Yahoo!広告の成果のタグが「ページを開いただけ」で反応していた：古い LP を見直す時の確かめ方</title><link>https://asteroid-technology.com/astech-blog/yahoo-ads-conversion-tag-on-page-view/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/yahoo-ads-conversion-tag-on-page-view/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>Web広告</category><description>Yahoo!広告のコンバージョンタグ（広告の成果を数えるタグ）が、申し込みの完了ではなく、LP を開いただけで反応していました。成果の数が実際より多くなり、配信の調整もずれるので、外す対象にしました。古い LP のタグを見直す時の確かめ方です。</description></item>
<item><title>Google Workspace で複数のドメインを使う時の SPF・DKIM・DMARC：DNS はレンタルサーバーに集めた</title><link>https://asteroid-technology.com/astech-blog/workspace-multiple-domains-spf-dkim-dmarc/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/workspace-multiple-domains-spf-dkim-dmarc/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>サーバー・インフラ</category><description>Google Workspace で複数のドメインのメールを使う時、SPF・DKIM・DMARC（送り主が本物かを確かめる仕組み）は、ドメインごとに設定が要ります。DNS をまとめているレンタルサーバー（Xserver）の側で設定し、別の会社で取ったドメインも DNS を集めた記録です。</description></item>
<item><title>Google Workspace の「ドメインエイリアス」と「セカンダリドメイン」の違い：新しい事業のドメインはどちらで足すか</title><link>https://asteroid-technology.com/astech-blog/workspace-domain-alias-vs-secondary-domain/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/workspace-domain-alias-vs-secondary-domain/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>サーバー・インフラ</category><description>Google Workspace にドメインを足す方法は、ドメインエイリアス（ユーザーのエイリアス ドメイン）とセカンダリドメインの2つです。エイリアスは全員にそのドメインのアドレスが付くので、専属のメンバーがいる新しい事業はセカンダリドメインで足しました。違いと選び方です。</description></item>
<item><title>録音を誰が見られるかを、画面・同意・ポリシーのすべてに書いた理由</title><link>https://asteroid-technology.com/astech-blog/who-can-see-recordings/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/who-can-see-recordings/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>接客の録音アプリで、採点しない「個別録音」を見られるのは、本人とアプリの代金を払うオーナーだけにしました。最初は注意書きを出さないつもりでしたが方針を変え、録音の画面、同意の画面、設定、プライバシーポリシーのすべてに同じ一文を書いた、閲覧権限の設計です。</description></item>
<item><title>TikTok の Spark Ads で、申し込みの数が少ない間は何を目標に最適化するか</title><link>https://asteroid-technology.com/astech-blog/tiktok-spark-ads-optimization-goal/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/tiktok-spark-ads-optimization-goal/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>Web広告</category><description>TikTok の Spark Ads（投稿した動画をそのまま広告にする形式）で、申し込みの完了（コンバージョン）の数がまだ少ない間は、最適化の目標を申し込みではなく「LP の表示」に置いています。美容サロンの3店舗、18〜44歳向けで、そう決めた考え方の記録です。</description></item>
<item><title>現場のスタッフに TestFlight は無理だった：業務アプリを「リンクとGoogleログインだけ」で配る</title><link>https://asteroid-technology.com/astech-blog/testflight-not-for-field-staff/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/testflight-not-for-field-staff/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>業務アプリを TestFlight（Apple のテスト配信）でスタッフに入れてもらおうとしたら、操作できませんでした。TestFlight はオーナーの確認用だけにし、スタッフには App Store の非公開配布（Unlisted）で「リンクから入手して Google でログインするだけ」に一本化した理由と、配った案内です。</description></item>
<item><title>TestFlight のビルド番号が食い違う問題と、審査に出す前の7つの自動検査</title><link>https://asteroid-technology.com/astech-blog/testflight-build-number-archive-checks/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/testflight-build-number-archive-checks/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>TestFlight のビルド番号（CFBundleVersion）を上げても git に残らず、App Store Connect の番号と食い違いました。番号の決め方とアーカイブを1つのコマンドにまとめ、App Store 版では接続先や切り替えの部品など7項目を自動で検査するようにした記録です。</description></item>
<item><title>生成 AI を使わず、iPhone の無料の部品だけで歯を見つけて色を変える</title><link>https://asteroid-technology.com/astech-blog/teeth-detection-without-generative-ai/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/teeth-detection-without-generative-ai/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>歯のホワイトニングを試せるアプリ（Shade Preview）は、生成 AI も外部のサービスも使わず、iPhone の Vision（顔の検出）と Lab 色空間の色の計算だけで歯を見つけて白くしています。速さを優先した理由と、「口の範囲が狭すぎる」問題の直し方です。</description></item>
<item><title>外出先から自宅の Mac へ：MacBook・iPhone・iPad に Tailscale を入れてつなぐ</title><link>https://asteroid-technology.com/astech-blog/tailscale-remote-access-home-mac/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/tailscale-remote-access-home-mac/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>サーバー・インフラ</category><description>Tailscale は、自分の端末どうしだけをつなぐ専用の網（VPN）を作るサービスです。MacBook、iPhone、iPad に入れて、ルーターの入口を開ける（ポート開放）ことなく、外出先から自宅の Mac につないでいる形の記録です。</description></item>
<item><title>写真の背景と、ガラスのような半透明の画面を SwiftUI で作る：全画面に広げた時に決めたこと</title><link>https://asteroid-technology.com/astech-blog/swiftui-photo-background-glass-ui/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/swiftui-photo-background-glass-ui/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>iOS 26 の SwiftUI の glassEffect で、写真の背景にガラスのような半透明のカードを重ねるデザインを作りました。黒のグラデーションで文字を読みやすくし、背景は6枚と写真アプリから選べる形に。全画面に広げる時に、部品を1か所にまとめた作り方です。</description></item>
<item><title>女性スタッフが iPhone だけで撮る、TikTok・Instagram 広告動画のマニュアルを作った</title><link>https://asteroid-technology.com/astech-blog/staff-iphone-ad-video-manual/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/staff-iphone-ad-video-manual/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>Web広告</category><description>TikTok と Instagram の広告に使う動画を、店舗の女性スタッフが iPhone だけで撮れるよう、撮影と編集のマニュアルを作りました。三脚なしが前提です。新店の動画の台本と、Spark Ads の動画のコード（投稿を広告に使う許可のコード）を管理する表もそろえました。</description></item>
<item><title>アプリが計算した数字には、必ず計算式を出す：決めるのは担当者、アプリは手助け</title><link>https://asteroid-technology.com/astech-blog/show-formula-for-calculated-values/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/show-formula-for-calculated-values/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>業務アプリが自動で計算した値には、すべての画面で計算式を出しています。計算できるのにあえて手で入れてもらう欄は、式と結果を参考に出し、担当者が経験で直す形に。金額や判断を決めるのは担当者、というオーナーの方針から来た UI 設計です。</description></item>
<item><title>AWS を使わず、レンタルサーバーで自社のアプリを動かすと決めた理由</title><link>https://asteroid-technology.com/astech-blog/rental-server-instead-of-aws/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/rental-server-instead-of-aws/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>サーバー・インフラ</category><description>接客の録音アプリのサーバーに、最初は AWS（S3、Lambda、DynamoDB、Cognito）を考えましたが、採りませんでした。音声は各社の Google ドライブに置き、文字と設定だけをすでに使っているレンタルサーバー（Xserver）に置いた判断と理由です。</description></item>
<item><title>本番のアプリから「テスト環境に切り替えるボタン」を消した理由と、#if DEBUG では足りなかった話</title><link>https://asteroid-technology.com/astech-blog/remove-environment-switch-from-app-store-build/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/remove-environment-switch-from-app-store-build/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>本番とテストの接続先を切り替えるボタンを、開発用と TestFlight 用のビルドにだけ出し、App Store 版には入れないことにしました。TestFlight のビルドは Debug ではないので #if DEBUG では分けられず、SWIFT_ACTIVE_COMPILATION_CONDITIONS の独自フラグで切った方法です。</description></item>
<item><title>採用 LP の応募の入口を、求人サイトの Web 応募から LINE と電話に絞った</title><link>https://asteroid-technology.com/astech-blog/recruiting-lp-line-and-phone/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/recruiting-lp-line-and-phone/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>Web広告</category><description>採用 LP の応募の入口を、求人サイトの Web の応募と電話から、LINE（公式アカウント）と電話に変えました。対象は20代の女性で、窓口は5店舗とも共通。幹部の採用（3つの職種）も同じ連絡先にした、ストレッチの店舗の記録です。</description></item>
<item><title>画面を閉じても止まらない、失わない：iPhone の録音アプリで直した4つのこと</title><link>https://asteroid-technology.com/astech-blog/recording-app-keeps-recording/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/recording-app-keeps-recording/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>iPhone の録音アプリで、録音が止まる・失われる4つの不具合を直しました。タブの切り替えで AVAudioSession の setActive(false) がマイクを止める、強制終了でファイルが読めない、通話で終わる、送信待ちから消える。原因と直し方の記録です。</description></item>
<item><title>業務アプリの本番とテスト環境の分け方：データベースとドライブは分け、AI の鍵は共通に</title><link>https://asteroid-technology.com/astech-blog/production-and-test-environments/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/production-and-test-environments/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>業務アプリの本番環境とテスト環境を、何を分けて何を共通にするかで決めました。データベースと Google ドライブのフォルダは分け、AI（Gemini）の鍵は共通に。データは本番からテストへの一方向だけ、修正は必ずテストで確かめてから本番へ出します。</description></item>
<item><title>本番と同じサーバーで、誰にも見せずに新しいサイトを試す：確認用のサブドメインの作り方</title><link>https://asteroid-technology.com/astech-blog/private-rehearsal-subdomain-xserver/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/private-rehearsal-subdomain-xserver/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>ホームページ制作</category><description>Xserver に、本番と同じサーバーで試せる確認用のサブドメイン（ステージング環境）を作りました。ベーシック認証のアクセス制限、検索除けの X-Robots-Tag: noindex、親フォルダの WordPress の書き換えを効かせない RewriteEngine On、本番でしか確かめられないことの確かめ方までの手順です。</description></item>
<item><title>1枚の採用 LP に、正社員とアルバイトと5店舗をまとめて載せる設計</title><link>https://asteroid-technology.com/astech-blog/one-recruiting-lp-five-stores/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/one-recruiting-lp-five-stores/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>ホームページ制作</category><description>採用 LP（応募してほしい人に見てもらうページ）を、店舗ごと・働き方ごとに分けず、正社員とアルバイト、5つの店舗を1枚にまとめました。応募する人に希望の店舗を選んでもらう形にした、ストレッチの店舗の採用 LP の設計です。</description></item>
<item><title>iPhone 内蔵の文字起こしは、AI の56%しか言葉を拾えなかった：接客の録音で比べた結果</title><link>https://asteroid-technology.com/astech-blog/on-device-transcription-56-percent/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/on-device-transcription-56-percent/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>iPhone 内蔵の文字起こし（Apple の SpeechTranscriber）と、クラウドの AI（Gemini）を、95分の接客の録音で比べました。内蔵は30秒で終わる一方、拾えた文字は AI の56%で、お客様の声が抜けていました。方式を選べる作りにした経緯です。</description></item>
<item><title>アプリのデータを毎晩 Google スプレッドシートに写して、見渡す台帳と復旧の保険にする</title><link>https://asteroid-technology.com/astech-blog/nightly-ledger-spreadsheet-backup/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/nightly-ledger-spreadsheet-backup/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>業務の自動化</category><description>業務アプリのデータベースを、毎晩 Google スプレッドシートに読み出し専用で写しています。サーバーの PHP が Google Drive API（drive.file の権限）で書き込み、オーナーが見渡す台帳と、壊れた時の復旧の保険にしています。GAS ではなくサーバーが書き込む方式にした理由も書きます。</description></item>
<item><title>1台のレンタルサーバーに複数のアプリを同居させつつ、不動産のデータだけは分ける</title><link>https://asteroid-technology.com/astech-blog/multiple-apps-one-server-separate-data/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/multiple-apps-one-server-separate-data/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>サーバー・インフラ</category><description>1つのレンタルサーバー（Xserver）の契約の中で、複数のアプリを動かしています。ドメイン、PHP、SSL、公開フォルダ、データベースとそのユーザーをアプリごとに分け、ほかのアプリのミスが不動産のデータに及ばないようにした設計です。</description></item>
<item><title>データベースの更新が1つ飛ばされて当たった事故と、番号の順番を検査する仕組み</title><link>https://asteroid-technology.com/astech-blog/migration-order-check/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/migration-order-check/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>テスト環境で、データベースのマイグレーション（表や列の形を変える更新）の028と029が当たらないまま、030だけが当たりました。原因は、更新の道具が番号の順番を確かめていなかったこと。抜けや順番の崩れを見つけたら何もせずに止まる検査を足した記録です。</description></item>
<item><title>LP のフォームから予約が入ったら、GAS で店舗にメールと Slack で知らせる</title><link>https://asteroid-technology.com/astech-blog/lp-form-gas-mail-slack-notice/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/lp-form-gas-mail-slack-notice/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>業務の自動化</category><description>LP（広告から来た人が見るページ）のフォームから予約が入ったら、Google Apps Script（GAS）が店舗にメールと Slack で知らせる仕組みです。申し込みにすぐ気づけるよう、2つの道で知らせています。</description></item>
<item><title>カメラに映したまま歯が白くなる「ライブ表示」を、iPhone の中だけで動かす</title><link>https://asteroid-technology.com/astech-blog/live-teeth-whitening-camera/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/live-teeth-whitening-camera/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>カメラに映したまま歯が白くなるライブ表示を、iPhone の中だけで動かしました。毎コマの色の変換は GPU で、歯の範囲（マスク）づくりは1秒に約10回に減らして、なめらかさを保っています。映像は外へ送りません。無料版は1日1回30秒です。</description></item>
<item><title>Yahoo メールで登録した約100のサービスを棚卸しして、会社のアドレスへ移す</title><link>https://asteroid-technology.com/astech-blog/inventory-services-registered-with-yahoo-mail/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/inventory-services-registered-with-yahoo-mail/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>サーバー・インフラ</category><description>店舗で使う約100のサービスが Yahoo メールのアドレスで登録されていました。Google Workspace のアドレスへ移すため、IMAP でメールを読み、送り主のドメインを数える Python の道具で登録先を洗い出しました。二段階認証の管理にはパスワード管理のサービスを勧めました。</description></item>
<item><title>社内ポータルには「ホーム画面に追加する手順」まで載せる</title><link>https://asteroid-technology.com/astech-blog/internal-portal-add-to-home-screen/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/internal-portal-add-to-home-screen/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>業務の自動化</category><description>社員とアルバイトが使う社内ポータル（社内の入口のページ）に、業務アプリへのリンクだけでなく、iPhone の Safari で「ホーム画面に追加」する手順も載せました。便利なリンクの一覧は、別のアプリの JSON を読んで表示する作りです。</description></item>
<item><title>美容サロンの Instagram のカルーセル広告は、写真を前に出して華やかに見せる</title><link>https://asteroid-technology.com/astech-blog/instagram-carousel-ads-beauty-salon/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/instagram-carousel-ads-beauty-salon/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>Web広告</category><description>美容サロンの Instagram のカルーセル広告（何枚かの画像を横にめくって見せる広告）は、写真を前に出して華やかに見せます。ホワイトニングのサロンの500円と70%オフのキャンペーンで、1枚目に何を載せたかの記録です。成果の数字は載せていません。</description></item>
<item><title>GAS の Web アプリが遅い時は、画面だけをレンタルサーバーに移す</title><link>https://asteroid-technology.com/astech-blog/gas-web-app-slow-move-ui-to-server/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/gas-web-app-slow-move-ui-to-server/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>業務の自動化</category><description>GAS の Web アプリ（GAS で作れる Web ページ）の表示が遅い時は、集約の GAS とスプレッドシートを残し、画面だけをレンタルサーバーの HTML と PHP に移す手があります。いきなり切り替えず、両方を並べて動かした進め方の記録です。</description></item>
<item><title>GAS の落とし穴4つ：日本語の関数名、PHP からの呼び出し、消えたプロジェクト、Safari のフォーム</title><link>https://asteroid-technology.com/astech-blog/gas-four-pitfalls/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/gas-four-pitfalls/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>業務の自動化</category><description>Google Apps Script（GAS）で当たった4つの落とし穴と直し方。日本語の関数名が google.script.run から呼べない、PHP の CURLOPT_CUSTOMREQUEST で GAS の転送が壊れる（CURLOPT_POST で解決）、消えたプロジェクトの取り戻し方、Safari のフォームの復元で時刻がずれる、の4つです。</description></item>
<item><title>7店舗のスプレッドシートを GAS で集約するなら、列は位置ではなく見出しの名前で探す</title><link>https://asteroid-technology.com/astech-blog/gas-aggregate-sheets-by-header-name/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/gas-aggregate-sheets-by-header-name/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>業務の自動化</category><description>7店舗のスプレッドシートを Google Apps Script（GAS）で1つに集約しています。列の位置で読むと、列を1つ足しただけで数字がずれ、エラーにもなりません。見出しの名前で列を探す作りと、設定のシート、毎晩の書き直しの記録です。</description></item>
<item><title>サイトの引っ越しで app-ads.txt を消すと、アプリの広告が止まるおそれがある</title><link>https://asteroid-technology.com/astech-blog/do-not-delete-app-ads-txt/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/do-not-delete-app-ads-txt/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>ホームページ制作</category><description>app-ads.txt は、AdMob がアプリの開発者を確かめるために、開発者のサイトの一番上から読むファイルです。WordPress からの移行で消しかけましたが、消すと広告が配信されなくなるおそれがあります。必ず残し、切り替えのあとも中身が同じかを確かめた記録です。</description></item>
<item><title>個人事業主が Apple Developer に「組織」として登録するまで（D-U-N-S 番号）</title><link>https://asteroid-technology.com/astech-blog/apple-developer-organization-sole-proprietor/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/apple-developer-organization-sole-proprietor/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>個人事業主でも、屋号のまま Apple Developer Program に組織（Organization）として登録できました。D-U-N-S 番号の取得から、「この組織が法人であることを確認できませんでした」で弾かれ、約1週間後に出し直して通るまでの記録です。</description></item>
<item><title>業務アプリが Guideline 3.2 で戻された時の、非公開配布（Unlisted）への切り替え</title><link>https://asteroid-technology.com/astech-blog/app-review-guideline-3-2-unlisted-distribution/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/app-review-guideline-3-2-unlisted-distribution/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>特定の会社向けの業務アプリが App Store 審査で Guideline 3.2 として戻された時、私たちは非公開配布（Unlisted App Distribution）を申し込み、結果が出るまで再提出しないと決めました。2026年10月15日に承認され、同じ日に新しいビルドで再提出した経緯です。</description></item>
<item><title>App Store 審査で「Guideline 2.1 Information Needed」と言われたら出す6つのもの</title><link>https://asteroid-technology.com/astech-blog/app-review-guideline-2-1-information-needed/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/app-review-guideline-2-1-information-needed/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>App Store 審査で「Guideline 2.1 - Information Needed」と戻されたら、追加の情報を出せば先へ進めます。求められた6つ（実機の画面録画、目的と対象者、使い方とログイン、外部サービス、地域の違い、規制のある業種か）に、どう答えて再提出したかの記録です。</description></item>
<item><title>アプリの宣伝に使う素材の利用条件：Apple の端末画像と、Pexels の写真で決めたこと</title><link>https://asteroid-technology.com/astech-blog/app-marketing-asset-licenses/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/app-marketing-asset-licenses/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>ホームページ制作</category><description>Apple Design Resources の端末画像（iPhone の枠）は、利用条件がアプリの画面のモックアップに限られるので、Web サイトの画面には使いませんでした。Pexels の写真は商用利用できますが、写っている人を悪く見せる使い方はできないので、歯を黄ばませた画像はやめました。</description></item>
<item><title>アプリのアイコンに枠を入れない：背景を全面に敷いて、角丸は iPhone に任せる</title><link>https://asteroid-technology.com/astech-blog/app-icon-no-border/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/app-icon-no-border/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>iPhone アプリのアイコンは、角丸の縁取りやガラスの枠を描かず、背景を全面に敷いた正方形の画像で作ります。角を丸めるのは iPhone で、自分で描くと角丸が二重になります。枠があると App Store の審査で指摘されることが多かった、というオーナーの経験も書きます。</description></item>
<item><title>AI の文字起こし代が月1万円を超えて、アプリの料金の設計を見直した</title><link>https://asteroid-technology.com/astech-blog/ai-transcription-cost-pricing/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/ai-transcription-cost-pricing/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>接客の録音を Gemini（Google の AI）で文字起こし・採点する仕組みは、AI の費用が月1万円を超えていました。原因は音声をそのまま送っていたこと（音声1秒あたり約32トークン）。文字起こしを iPhone の中に移し、無料の枠と広告、課金の方法まで見直した記録です。</description></item>
<item><title>管理画面の URL を /admin にしない：「サービス名＋推測できない英数字」の決まり</title><link>https://asteroid-technology.com/astech-blog/admin-url-random-path/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/admin-url-random-path/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>管理画面の URL が /admin のままだと、決まった URL を片っ端から試す仕組みに真っ先に狙われます。自社アプリの管理画面を「サービス名＋推測できないランダムな英数字」に変え、Google ログインの制限はそのまま残した決まりと、URL の覚え方を書きます。</description></item>
<item><title>店舗ごとの中継ページで、Meta・TikTok・Google 広告・GA4 の計測をまとめる</title><link>https://asteroid-technology.com/astech-blog/ad-tracking-relay-pages-per-store/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/ad-tracking-relay-pages-per-store/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>Web広告</category><description>複数の店舗の広告の計測（コンバージョン計測）を、Google タグマネージャー（GTM）と店舗ごとの中継ページでまとめました。LP と店舗の予約の間に1枚はさむだけで、Meta、TikTok、Google 広告、GA4 で、どの店舗の予約へ進んだかを同じ仕組みで数えられます。</description></item>
<item><title>メンションされなくても仲間の動きを通知する：営業の業務アプリの通知の設計</title><link>https://asteroid-technology.com/astech-blog/activity-notifications-without-mention/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/activity-notifications-without-mention/</guid><pubDate>Mon, 12 Oct 2026 00:00:00 +0900</pubDate><category>アプリ開発</category><description>業務アプリのプッシュ通知（iPhone に届くお知らせ）を、メンションが無くても仲間の動きが届く設計にしました。チャット、案件の保存、日報を通知しつつ、通知だらけにしない工夫と、おやすみの時間を iPhone の集中モードに任せた理由を書きます。</description></item>
<item><title>Xserver のサーバーキャッシュで、お問い合わせフォームが送れなくなる理由と対処</title><link>https://asteroid-technology.com/astech-blog/xserver-server-cache-contact-form/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/xserver-server-cache-contact-form/</guid><pubDate>Sun, 11 Oct 2026 00:00:00 +0900</pubDate><category>ホームページ制作</category><description>Xserver のサーバーキャッシュに PHP のお問い合わせフォームが載ると、全員に同じ CSRF トークン（送信を確かめる「券」）が配られて送れなくなります。対処は Cache-Control: no-store, private を毎回返すこと。session_start の落とし穴と、本番で curl で確かめる方法まで。</description></item>
<item><title>WordPress から静的サイトへ、社名で検索1位を守ったまま移行した全手順</title><link>https://asteroid-technology.com/astech-blog/wordpress-to-static-site-migration/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/wordpress-to-static-site-migration/</guid><pubDate>Sun, 11 Oct 2026 00:00:00 +0900</pubDate><category>ホームページ制作</category><description>会社のサイトを WordPress から静的サイト（HTML のファイルを置くだけのサイト）へ移した全手順です。社名で検索1位を守るための 301 リダイレクトの洗い出し、バックアップ、誰にも見せないリハーサル、表示を止めない切り替えの順番、すぐ戻せる作りまでを、実際の手順書から書きます。</description></item>
<item><title>WordPress が黙って行っていた転送を、止める前に洗い出す方法</title><link>https://asteroid-technology.com/astech-blog/wordpress-hidden-redirects/</link><guid isPermaLink="true">https://asteroid-technology.com/astech-blog/wordpress-hidden-redirects/</guid><pubDate>Sun, 11 Oct 2026 00:00:00 +0900</pubDate><category>ホームページ制作</category><description>「x-redirect-by: WordPress」は、WordPress が PHP の中で転送した時に付く応答の見出しです。.htaccess に転送の行が無いのに古い URL が転送されていたら、正体は WordPress 自身。止めると全部消えるので、curl で見分けて .htaccess に書き直した手順です。</description></item>
</channel>
</rss>
