<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>MacOS on hobbyworker취미생활자</title>
    <link>https://hobbyworker.me/vi/tags/macos/</link>
    <description>Recent content in MacOS on hobbyworker취미생활자</description>
    <generator>Hugo</generator>
    <language>vi</language>
    <copyright>2026 hobbyworker</copyright>
    <lastBuildDate>Thu, 21 May 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://hobbyworker.me/vi/tags/macos/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Thiết Kế DMG Phân Phối Cho Ứng Dụng macOS (2): Tọa Độ Layout Cửa Sổ và Biểu Tượng, và Tự Động Hóa</title>
      <link>https://hobbyworker.me/vi/dev/2026-05-21-design-macos-dmg-2-layout-coordinates/</link>
      <pubDate>Thu, 21 May 2026 00:00:00 +0000</pubDate>
      <guid>https://hobbyworker.me/vi/dev/2026-05-21-design-macos-dmg-2-layout-coordinates/</guid>
      <description>Kích thước cửa sổ DMG và vị trí đặt biểu tượng đều được quyết định bởi tọa độ. Bài viết này giải thích từng cái kích thước cửa sổ và vị trí, kích thước biểu tượng, và tọa độ X/Y của biểu tượng ứng dụng và Applications drop link trong create-dmg, hướng dẫn cách căn chỉnh tọa độ pixel của ảnh nền với tọa độ điểm của cửa sổ, và cách tự động hóa quá trình này để tái sử dụng cho mỗi lần phát hành — dựa trên ứng dụng mẫu FocusTimer.</description>
    </item>
    <item>
      <title>Thiết Kế DMG Phân Phối Cho Ứng Dụng macOS (1): create-dmg và Chuẩn Bị Ảnh Nền</title>
      <link>https://hobbyworker.me/vi/dev/2026-05-20-design-macos-dmg-1-create-dmg-and-background/</link>
      <pubDate>Wed, 20 May 2026 00:00:00 +0000</pubDate>
      <guid>https://hobbyworker.me/vi/dev/2026-05-20-design-macos-dmg-1-create-dmg-and-background/</guid>
      <description>Khi bạn tự phân phối ứng dụng macOS, thứ đầu tiên người dùng thấy là cửa sổ Finder mở ra khi họ nhấp đúp vào .dmg. Bài viết này giới thiệu công cụ create-dmg, hướng dẫn chuẩn bị thư mục staging chỉ chứa .app, và cách tạo ảnh nền DMG theo quy ước @2x Retina trong khi tránh bẫy DPI — dựa trên ứng dụng mẫu FocusTimer.</description>
    </item>
    <item>
      <title>Phát Hành Ứng Dụng macOS Lên Mac App Store (3): Cài Đặt Upload và Đăng Ký App Store Connect</title>
      <link>https://hobbyworker.me/vi/dev/2026-05-19-distribute-macos-app-mas-3-export-and-app-store-connect/</link>
      <pubDate>Tue, 19 May 2026 00:00:00 +0000</pubDate>
      <guid>https://hobbyworker.me/vi/dev/2026-05-19-distribute-macos-app-mas-3-export-and-app-store-connect/</guid>
      <description>Sau khi hoàn thành MAS build target và phân nhánh cấu hình cũng như code, đã đến lúc thiết lập con đường để đưa build đó lên App Store. Bài viết này kết thúc series bằng cách hướng dẫn viết ExportOptions-MAS.plist để upload, đăng ký app record trong App Store Connect, và xác minh build để hai kênh luôn không bị hỏng — dựa trên ứng dụng mẫu FocusTimer.</description>
    </item>
    <item>
      <title>Phát Hành Ứng Dụng macOS Lên Mac App Store (2): Tách Cấu Hình và Code Giữa Hai Kênh</title>
      <link>https://hobbyworker.me/vi/dev/2026-05-18-distribute-macos-app-mas-2-build-config-and-code/</link>
      <pubDate>Mon, 18 May 2026 00:00:00 +0000</pubDate>
      <guid>https://hobbyworker.me/vi/dev/2026-05-18-distribute-macos-app-mas-2-build-config-and-code/</guid>
      <description>Sau khi tạo build target cho MAS, bạn cần tách các file cấu hình và code để target đó thực sự tuân theo quy tắc App Store. Bài viết này hướng dẫn từng bước tạo file entitlements và Info.plist chỉ dành cho MAS, căn chỉnh cài đặt build, và phân nhánh code cập nhật tự động bằng #if canImport(Sparkle) — dựa trên ứng dụng mẫu FocusTimer.</description>
    </item>
    <item>
      <title>Phát Hành Ứng Dụng macOS Lên Mac App Store (1): Tạo Build Target Riêng Biệt</title>
      <link>https://hobbyworker.me/vi/dev/2026-05-17-distribute-macos-app-mas-1-target-setup/</link>
      <pubDate>Sun, 17 May 2026 00:00:00 +0000</pubDate>
      <guid>https://hobbyworker.me/vi/dev/2026-05-17-distribute-macos-app-mas-1-target-setup/</guid>
      <description>Phát hành ứng dụng macOS lên Mac App Store đòi hỏi một build target riêng biệt với target dùng cho phân phối trực tiếp, vì quy định duyệt App Store cấm các trình cập nhật tự động như Sparkle. Bài viết này hướng dẫn đăng ký Bundle ID chỉ dành cho MAS, nhân đôi build target trong Xcode, và xử lý gánh nặng dọn dẹp mà việc nhân đôi để lại — dựa trên ứng dụng mẫu FocusTimer.</description>
    </item>
    <item>
      <title>Tự Phân Phối Ứng Dụng macOS (3): Lưu Trữ Update Feed và Cài Đặt Build</title>
      <link>https://hobbyworker.me/vi/dev/2026-05-16-distribute-macos-app-3-update-hosting-and-build/</link>
      <pubDate>Sat, 16 May 2026 00:00:00 +0000</pubDate>
      <guid>https://hobbyworker.me/vi/dev/2026-05-16-distribute-macos-app-3-update-hosting-and-build/</guid>
      <description>Update feed cho cập nhật tự động của ứng dụng macOS được phân phối trực tiếp phải được lưu trữ tại vị trí công khai có thể truy cập mà không cần xác thực. Bài viết này lưu trữ repository cập nhật bằng GitHub Pages, kết nối với domain tùy chỉnh bạn kiểm soát, và hoàn thiện ExportOptions.plist cùng cấu hình phía ứng dụng để hoàn tất phần thiết lập một lần cho phân phối trực tiếp — dựa trên ứng dụng mẫu FocusTimer.</description>
    </item>
    <item>
      <title>Tự Phân Phối Ứng Dụng macOS (2): Tạo Khóa Ký Cập Nhật Tự Động Sparkle</title>
      <link>https://hobbyworker.me/vi/dev/2026-05-15-distribute-macos-app-2-sparkle-signing-key/</link>
      <pubDate>Fri, 15 May 2026 00:00:00 +0000</pubDate>
      <guid>https://hobbyworker.me/vi/dev/2026-05-15-distribute-macos-app-2-sparkle-signing-key/</guid>
      <description>Triển khai cập nhật tự động bằng framework Sparkle là tiêu chuẩn thực tế cho các ứng dụng macOS được phân phối trực tiếp. Bài viết này giải thích từng bước cách tạo khóa ký EdDSA mà Sparkle dùng để xác minh file cập nhật, nhúng khóa công khai vào ứng dụng, và sao lưu cũng như khôi phục khóa riêng tư an toàn — dựa trên ứng dụng mẫu FocusTimer.</description>
    </item>
    <item>
      <title>Tự Phân Phối Ứng Dụng macOS (1): Chứng Chỉ Developer ID và Chuẩn Bị Công Chứng</title>
      <link>https://hobbyworker.me/vi/dev/2026-05-14-distribute-macos-app-1-developer-id-certificate/</link>
      <pubDate>Thu, 14 May 2026 00:00:00 +0000</pubDate>
      <guid>https://hobbyworker.me/vi/dev/2026-05-14-distribute-macos-app-1-developer-id-certificate/</guid>
      <description>Để phân phối ứng dụng macOS trực tiếp mà không qua Mac App Store, bạn cần có chứng chỉ Developer ID và cấu hình công chứng (notarization) từ trước. Bài viết này hướng dẫn từng bước cài đặt ban đầu chỉ cần làm một lần — cài công cụ dòng lệnh, cấp chứng chỉ Developer ID Application, và đăng ký mật khẩu dành riêng cho App cùng hồ sơ notarytool để công chứng — dựa trên ứng dụng mẫu FocusTimer.</description>
    </item>
    <item>
      <title>Chuyển Đổi Văn Bản Thành Tên File bằng Automator trên macOS</title>
      <link>https://hobbyworker.me/vi/dev/2023-04-06-convert-text-to-filename-using-automator-on-macos/</link>
      <pubDate>Thu, 06 Apr 2023 00:00:00 +0000</pubDate>
      <guid>https://hobbyworker.me/vi/dev/2023-04-06-convert-text-to-filename-using-automator-on-macos/</guid>
      <description>Bài viết này giải thích cách tạo một Quick Action trên macOS bằng Automator để chuyển đổi văn bản sang định dạng phù hợp với tên file. Quick Action sẽ loại bỏ các ký tự đặc biệt, chuyển văn bản thành chữ thường và thay thế khoảng trắng bằng dấu gạch ngang.</description>
    </item>
    <item>
      <title>Hướng dẫn Homebrew cho người mới bắt đầu: Trình quản lý gói cho macOS</title>
      <link>https://hobbyworker.me/vi/dev/2023-03-13-a-beginners-guide-to-homebrew-the-missing-package-manager-for-macos/</link>
      <pubDate>Mon, 13 Mar 2023 00:00:00 +0000</pubDate>
      <guid>https://hobbyworker.me/vi/dev/2023-03-13-a-beginners-guide-to-homebrew-the-missing-package-manager-for-macos/</guid>
      <description>Trong bài viết này, chúng ta sẽ khám phá Homebrew — trình quản lý gói mạnh mẽ và đa năng được thiết kế đặc biệt cho người dùng macOS. Homebrew lấp đầy khoảng trống trên macOS bằng cách cung cấp cách dễ dàng để cài đặt và quản lý phần mềm mã nguồn mở, công cụ và thư viện không có trên App Store. Đến cuối bài, bạn sẽ hiểu vững cách cài đặt và sử dụng Homebrew, cùng với một ví dụ thực tế được hướng dẫn từng bước.</description>
    </item>
  </channel>
</rss>
