نصب و ارتقا

APK مناسب را انتخاب کنید، Throne برای Android را نصب کنید، از نسخهٔ 1.x یا NekoBox ارتقا دهید و برنامه را به‌روز نگه دارید.

این صفحه توضیح می‌دهد کدام APK را دانلود کنید، چگونه آن را نصب کنید، چگونه از نسخهٔ قدیمی‌تر منتقل شوید و به‌روزرسانی‌ها چگونه کار می‌کنند. Throne برای Android به Android 7.0 یا جدیدتر نیاز دارد. این برنامه روی گوشی‌ها، تبلت‌ها و دستگاه‌های Android TV اجرا می‌شود.

انتخاب APK مناسب

هر انتشار برای هر نوع پردازنده (ABI) یک APK دارد. APK جامعی که روی همهٔ دستگاه‌ها اجرا شود وجود ندارد؛ پس فایلی را انتخاب کنید که با دستگاه شما سازگار است:

APK دستگاه‌های معمول
Throne-<version>-arm64-v8a.apk تقریباً همهٔ گوشی‌ها و تبلت‌های سال‌های اخیر
Throne-<version>-armeabi-v7a.apk گوشی‌های قدیمی‌تر 32 بیتی، بسیاری از باکس‌ها و دانگل‌های Android TV
Throne-<version>-x86_64.apk شبیه‌سازها، برخی Chromebookها و رایانه‌های شخصی

برای دستگاه‌های x86 از نوع 32 بیتی نسخه‌ای ساخته نمی‌شود.

آنچه اهمیت دارد سیستم Android است، نه پردازنده. بسیاری از باکس‌های تلویزیون پردازندهٔ 64 بیتی دارند اما نسخهٔ 32 بیتی Android را اجرا می‌کنند، و این دستگاه‌ها به armeabi-v7a نیاز دارند.

برای یافتن ABI دستگاه خود، یک برنامهٔ نمایش اطلاعات دستگاه را باز کنید و دنبال ABI یا مجموعه‌دستورالعمل (instruction set) بگردید. اگر رایانه‌ای با adb دارید، این فرمان آن را چاپ می‌کند:

adb shell getprop ro.product.cpu.abi

اگر مطمئن نیستید، ابتدا arm64-v8a را امتحان کنید. اگر Android گفت برنامه سازگار نیست، یا آن را نصب نکرد، از armeabi-v7a استفاده کنید.

دانلود و بررسی

APK را از صفحهٔ دانلود یا صفحهٔ انتشارهای GitHub دانلود کنید. برچسب (tag) انتشارها با v شروع می‌شود؛ برای نمونه v2.0.0.

هر انتشار همچنین فایل SHA256SUMS را دارد که چک‌سام‌های SHA-256 فایل‌های APK آن انتشار است. بررسی چک‌سام اختیاری است. این کار تأیید می‌کند که فایل هنگام دانلود تغییر نکرده یا آسیب ندیده است. APK و SHA256SUMS را در یک پوشه روی رایانه قرار دهید و سپس فرمان مربوط به سیستم خود را اجرا کنید.

Linux:

sha256sum -c --ignore-missing SHA256SUMS

خروجی باید برای فایل شما OK را نشان دهد؛ برای نمونه Throne-2.0.0-arm64-v8a.apk: OK.

macOS:

shasum -a 256 Throne-2.0.0-arm64-v8a.apk

Windows:

Get-FileHash .\Throne-2.0.0-arm64-v8a.apk -Algorithm SHA256

در macOS و Windows، چک‌سام چاپ‌شده را با خط مربوط به فایل خود در SHA256SUMS مقایسه کنید. حروف بزرگ و کوچک تفاوتی ندارند.

نصب

اگر Throne برای Android نسخهٔ 1.x نصب است، ابتدا ارتقا از 1.x یا NekoBox را بخوانید.

  1. APK دانلودشده را باز کنید؛ برای نمونه از بخش دانلودهای مرورگر یا از یک برنامهٔ مدیریت فایل.
  2. اگر Android جلوی نصب را گرفت، به برنامه‌ای که فایل را با آن باز کرده‌اید اجازهٔ نصب برنامه بدهید. در Android 8 و جدیدتر، در پیام روی Settings (تنظیمات) بزنید و Allow from this source (اجازه از این منبع) را روشن کنید. در Android 7، گزینهٔ Unknown sources (منابع ناشناس) را در تنظیمات امنیتی Android روشن کنید.
  3. برگردید و روی Install (نصب) بزنید.
  4. Throne را باز کنید و به پرسش‌های اجرای نخست پاسخ دهید. مجوزها و اجرا در پس‌زمینه را ببینید.

برای Android TV، صفحهٔ Android TV را ببینید.

ارتقا از 1.x یا NekoBox

Throne برای Android نسخهٔ 2.0.0 از نو بر پایهٔ هستهٔ دسکتاپ ساخته شده است. این نسخه با کلید تازه‌ای امضا شده و از قالب داده‌ای جدیدی استفاده می‌کند:

  • Android نمی‌تواند نسخهٔ 2.0.0 را روی Throne برای Android نسخهٔ 1.x نصب کند. تا نسخهٔ قدیمی را حذف نکنید، نصب ناموفق خواهد بود.
  • نسخهٔ 2.0.0 بدون هیچ نمایه، گروه یا تنظیماتی شروع به کار می‌کند. این نسخه نمی‌تواند داده‌های برنامهٔ قدیمی را بخواند.
  • همچنین نمی‌تواند پشتیبان‌های قدیمی را بازیابی کند: فایل‌های throne_backup_….json و فایل‌های .zip روی WebDAV. این نسخه فقط فایل‌های .thrbackup را بازیابی می‌کند که قالب پشتیبان Throne دسکتاپ است.
  1. در برنامهٔ قدیمی، نشانی (URL) هر اشتراک را کپی کنید و در جای امنی نگه دارید؛ برای نمونه در یک یادداشت خصوصی. برای پیدا کردن آن، گروه‌ها (Group) را در منوی کناری باز کنید، دکمهٔ ویرایش گروه (نماد مداد) را بزنید و لینک اشتراک (Subscription Link) را کپی کنید. از اشتراک‌گذاری گروه اشتراکی (Share Subscription) استفاده نکنید: این گزینه یک لینک sn:// کپی می‌کند که نسخهٔ 2.0.0 نمی‌تواند آن را بخواند.
  2. نمایه‌هایی را که از اشتراک نیامده‌اند صادر (export) کنید: منوی گروه را باز کنید و صدور (Export) ← صدور به صورت فایل (Export to file) را انتخاب کنید. این فایل نمایه‌ها را به‌صورت لینک اشتراک‌گذاری در خود دارد. برای برخی انواع، مانند نمایه‌های WireGuard، SSH، ShadowTLS، Mieru، زنجیره (chain) و پیکربندی سفارشی (custom config)، برنامهٔ قدیمی لینک sn:// می‌نویسد که نسخهٔ 2.0.0 نمی‌تواند آن را وارد کند. تنظیمات این نمایه‌ها را یادداشت کنید تا بتوانید دوباره آن‌ها را بسازید.
  3. اگر از Throne دسکتاپ با همین نمایه‌ها استفاده می‌کنید، می‌توانید به‌جای این کار در آنجا یک پشتیبان بسازید (تنظیمات (Settings) ← تنظیمات پایه (Basic Settings) ← Backup and Restore) و بعداً آن را روی گوشی بازیابی کنید. جابه‌جایی بین دسکتاپ و Android را ببینید.
  4. برنامهٔ قدیمی را حذف کنید.
  5. نسخهٔ 2.0.0 را همان‌طور که در نصب آمده است نصب کنید.
  6. اشتراک‌های خود را دوباره اضافه کنید (اضافه‌کردن پراکسی جدید (Add profile) ← وارد کردن از بریده‌دان (Import from clipboard) ← Create new subscription group)، فایل صادرشده را وارد کنید (اضافه‌کردن پراکسی جدید ← وارد کردن از یک فایل (Import from file))، یا پشتیبان دسکتاپ را بازیابی کنید (منوی کناری ← ابزارها (Tools) ← Restore).

NekoBox for Android: برنامهٔ اصلی NekoBox نام بستهٔ (package name) متفاوتی دارد، بنابراین Android، Throne را در کنار آن نصب می‌کند. Throne نمی‌تواند داده‌ها یا پشتیبان‌های NekoBox را بخواند. اشتراک‌های خود را با لینک‌هایشان منتقل کنید. در هر زمان فقط یک برنامهٔ VPN می‌تواند متصل باشد.

نسخه‌های پایدار و پیش‌نمایش

انتشارهای پایدار به‌صورت انتشار عادی در GitHub منتشر می‌شوند؛ برای نمونه v2.0.0. نسخه‌های پیش‌نمایش به‌طور خودکار به‌صورت پیش‌انتشار (pre-release) در GitHub با برچسب‌هایی مانند v<version>-pre.<number> منتشر می‌شوند. این نسخه‌ها تازه‌ترین تغییرات را دارند و برای آزمایش در نظر گرفته شده‌اند، پس ممکن است باگ داشته باشند.

نسخهٔ پیش‌نمایش هنگام باز شدن برنامه هشداری نشان می‌دهد: «این برنامه نسخهٔ پیش‌نمایش است و ممکن است مشکلات زیادی داشته باشد. اگر نمی‌خواهید آن را آزمایش کنید، لطفاً برای دانلود نسخهٔ Release به GitHub بروید!» این هشدار در هر بار اجرا دوباره نمایش داده می‌شود تا وقتی که روی دوباره نشان نده (Don't show again) بزنید. پس از به‌روزرسانی به نسخهٔ پیش‌نمایش جدیدتر، دوباره ظاهر می‌شود.

نسخه‌های پایدار و پیش‌نمایش با یک کلید امضا شده‌اند، بنابراین نسخهٔ جدیدتر بدون نیاز به حذف، روی نسخهٔ قدیمی‌تر نصب می‌شود. برای دریافت نسخه‌های پیش‌نمایش از به‌روزرسان درون‌برنامه‌ای، Allow updating to beta versions را روشن کنید.

به‌روزرسان درون‌برنامه‌ای

نسخه‌های GitHub می‌توانند خودشان را به‌روزرسانی کنند:

  1. درباره برنامه (About) را در منوی کناری باز کنید و روی Check for updates بزنید. خط زیر آن کانال را نشان می‌دهد: «Channel: stable releases» (کانال: انتشارهای پایدار) یا «Channel: stable and pre-releases» (کانال: انتشارهای پایدار و پیش‌انتشارها).
  2. اگر نسخهٔ جدیدتری وجود داشته باشد، Throne پیام «نسخهٔ جدید در دسترس است» را همراه با شمارهٔ نسخه، حجم دانلود و یادداشت‌های انتشار نشان می‌دهد. روی Update بزنید.
  3. در Android 8 و جدیدتر، Throne بار اول با عنوان «Allow installing updates» (اجازهٔ نصب به‌روزرسانی‌ها) اجازه می‌خواهد. روی باز کردن تنظیمات (Open settings) بزنید، به Throne اجازهٔ نصب برنامه بدهید و سپس برگردید.
  4. Throne فایل APK را دانلود و بررسی می‌کند. سپس Android از شما می‌خواهد نصب را تأیید کنید.

اتصال در حین جایگزینی برنامه قطع می‌شود و پس از به‌روزرسانی دوباره برقرار می‌شود.

تنظیمات به‌روزرسانی در تنظیمات ← General، در گروه Updates قرار دارند:

تنظیم پیش‌فرض کارکرد
Allow updating to beta versions خاموش پیش‌انتشارها (نسخه‌های پیش‌نمایش) را هم پیشنهاد می‌دهد.
Check for updates daily خاموش روزی یک بار بررسی می‌کند و اعلان «Throne … is available» (Throne … در دسترس است) را نشان می‌دهد. این اعلان دکمهٔ Skip this version دارد.

پیش از نصب هر چیزی، Throne فایل دانلودشده را بررسی می‌کند:

  • حجم و چک‌سام SHA-256 آن، مطابق آنچه در مانیفست به‌روزرسانی انتشار (throne-update.json) آمده است؛
  • اینکه فایل واقعاً Throne و جدیدتر از نسخهٔ نصب‌شده باشد؛
  • اینکه با همان کلید برنامهٔ نصب‌شده، و با کلید انتشار Throne، امضا شده باشد.

اگر یکی از بررسی‌ها ناموفق باشد، چیزی نصب نمی‌شود. اگر نسخهٔ شما با کلید انتشار Throne امضا نشده باشد، برای نمونه نسخه‌ای از منبعی دیگر، به‌روزرسان این پیام را نشان می‌دهد: «The download is signed with a different key than this build, so Android cannot install it as an update. Back up, uninstall this build and install the release from GitHub.» (فایل دانلودشده با کلیدی متفاوت از این نسخه امضا شده است و Android نمی‌تواند آن را به‌عنوان به‌روزرسانی نصب کند؛ پشتیبان بگیرید، این نسخه را حذف کنید و نسخهٔ انتشار را از GitHub نصب کنید.)

به‌روزرسان همچنین این‌گونه کار می‌کند:

  • APK مربوط به همان ABI را نصب می‌کند که شما نصب کرده‌اید، برای نمونه arm64-v8a. هرگز به ABI دیگری تغییر نمی‌کند.
  • برخی انتشارها را نمی‌توان از داخل برنامه نصب کرد: انتشارهای بدون مانیفست به‌روزرسانی، و انتشارهایی که APK مخصوص ABI شما را ندارند. در این حالت Throne پیام «This update cannot be installed from the app (…). Download it from the release page.» (این به‌روزرسانی را نمی‌توان از داخل برنامه نصب کرد (…)؛ آن را از صفحهٔ انتشار دانلود کنید.) را نشان می‌دهد و گزینهٔ Open in browser را پیشنهاد می‌کند.
  • وقتی Use proxy روشن است (تنظیمات ← اشتراک‌ها (Subscriptions)) یا حالت سرویس فقط به حالت پراکسی (Proxy only) است، و Throne متصل است، بررسی و دانلود از پروکسی محلی Throne عبور می‌کنند. وقتی هیچ نمایه‌ای در حال اجرا نیست، مستقیم وصل می‌شوند. وقتی غیرفعال کردن ورودی ترکیبی (Disable mixed inbound) روشن باشد، از پروکسی محلی استفاده نمی‌کنند.
  • خطاهای گواهی TLS برای به‌روزرسانی‌ها هرگز نادیده گرفته نمی‌شوند، حتی وقتی Ignore TLS errors روشن باشد.

نسخهٔ F-Droid

کد منبع یک گونهٔ ساخت (build variant) دوم به نام fdroid دارد که برای F-Droid در نظر گرفته شده است. این گونه به‌روزرسان درون‌برنامه‌ای ندارد: درباره برنامه ← Check for updates و تنظیمات Updates وجود ندارند و برنامه اجازهٔ نصب برنامه‌ها را درخواست نمی‌کند. Throne برای Android هنوز در F-Droid نیست. درخواست افزودن آن در #37 ثبت شده است.

Android به‌روزرسانی را فقط وقتی نصب می‌کند که با همان کلید برنامهٔ نصب‌شده امضا شده باشد. بنابراین نسخه‌ای که با کلید دیگری امضا شده و نسخهٔ GitHub نمی‌توانند یکدیگر را به‌روزرسانی کنند. برای جابه‌جایی بین آن‌ها، از داده‌های خود پشتیبان بگیرید (منوی کناری ← ابزارها ← Create backup)، برنامه را حذف کنید، نسخهٔ دیگر را نصب کنید و پشتیبان را بازیابی کنید.