diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml new file mode 100644 index 0000000000..11732f7585 --- /dev/null +++ b/.github/workflows/pages.yml @@ -0,0 +1,27 @@ +name: Publish website +on: + push: + branches: [main] + paths: ['site/**', '.github/workflows/pages.yml'] + workflow_dispatch: +permissions: + contents: read + pages: write + id-token: write +concurrency: + group: pages + cancel-in-progress: true +jobs: + deploy: + runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + steps: + - uses: actions/checkout@v4 + - uses: actions/configure-pages@v5 + - uses: actions/upload-pages-artifact@v3 + with: + path: site + - uses: actions/deploy-pages@v4 + id: deployment diff --git a/CHANGELOG.md b/CHANGELOG.md index 248be94a5e..3f3e240c42 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +# LoopLink 0.3.0 — 2026-10-01 + +- Use the play-button logo consistently in the launcher and documentation. +- Publish a signed release APK with versionCode 29 and the explicitly selected local runtime authentication assets. +- Public-tree check, 274 unit tests and release lint pass (four lint warnings). Verify the existing release signing key, package/version, non-debuggable flag and exact runtime-asset matches. No device testing performed for this release. + # LoopLink 0.2.9 — 2026-10-01 - Redesign the head-unit UI for quick use in the car and add a switch for CarPlay's Home icon. diff --git a/README.md b/README.md index 7eec66ee96..fb225bd804 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,12 @@ > **Fork notice.** LoopLink is a fork of [DiPlay](https://github.com/shihabal3amri/DiPlay) by shihabal3amri, which is itself based on [xcertplay](https://github.com/shilapi/xcertplay) by shilapi; its settings layout adapts [DiAuto](https://github.com/shihabal3amri/DiAuto). LoopLink removes DiPlay's BYD-specific features and rebrands the app. It is an independent project and is not affiliated with or endorsed by the DiPlay, xcertplay or DiAuto authors. +## Screenshots + +![LoopLink home screen with the play-button logo](asset/screenshot.png) + +Captured in the Android head-unit emulator. + ## What it does - Wired USB and wireless CarPlay (Wi-Fi Direct or the car's existing hotspot) with local authentication. diff --git a/README.zh-CN.md b/README.zh-CN.md index 068cb17f6f..8c05eb18ae 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -1,4 +1,6 @@ -# DiPlay +LoopLink + +![LoopLink 主界面与播放按钮标志](asset/screenshot.png) 为兼容的比亚迪安卓车机提供有线及无线 CarPlay,采用 DiAuto 风格界面。 diff --git a/asset/looplink-logo.svg b/asset/looplink-logo.svg index d794930461..2362f35efb 100644 --- a/asset/looplink-logo.svg +++ b/asset/looplink-logo.svg @@ -5,6 +5,7 @@ + LoopLink diff --git a/asset/looplink-mark.svg b/asset/looplink-mark.svg index 5e74db7950..58b948dd8f 100644 --- a/asset/looplink-mark.svg +++ b/asset/looplink-mark.svg @@ -5,5 +5,6 @@ + diff --git a/asset/screenshot.png b/asset/screenshot.png new file mode 100644 index 0000000000..68dd5fcbfa Binary files /dev/null and b/asset/screenshot.png differ diff --git a/common/src/main/res/raw/ic_car_home.png b/common/src/main/res/raw/ic_car_home.png index 160f070270..1e1d644a91 100644 Binary files a/common/src/main/res/raw/ic_car_home.png and b/common/src/main/res/raw/ic_car_home.png differ diff --git a/common/src/main/res/raw/placeholder_icon.png b/common/src/main/res/raw/placeholder_icon.png index 3c9996aadc..1e1d644a91 100644 Binary files a/common/src/main/res/raw/placeholder_icon.png and b/common/src/main/res/raw/placeholder_icon.png differ diff --git a/mobile/build.gradle.kts b/mobile/build.gradle.kts index e5c9b5a5d3..3cf6279955 100644 --- a/mobile/build.gradle.kts +++ b/mobile/build.gradle.kts @@ -17,8 +17,8 @@ android { applicationId = "io.loopbreak.looplink" minSdk = 28 targetSdk = 37 - versionCode = 28 - versionName = "0.2.9" + versionCode = 29 + versionName = "0.3.0" } diff --git a/scripts/build_site.py b/scripts/build_site.py deleted file mode 100644 index 58cc9987b9..0000000000 --- a/scripts/build_site.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python3 -"""Generate the five static GitHub Pages editions; no runtime dependencies.""" -from pathlib import Path -import json -from html import escape as e -ROOT = Path(__file__).resolve().parents[1] -SITE = ROOT / 'site' -data = json.loads((SITE / 'content.json').read_text()) -BASE = 'https://shihabal3amri.github.io/DiPlay/' -REPO = 'https://github.com/shihabal3amri/DiPlay' -RELEASE = REPO + '/releases/tag/v0.2.8' -DOWNLOAD = REPO + '/releases/download/v0.2.8/DiPlay-0.2.8.apk' -for lang, d in data.items(): - folder = SITE if lang == 'en' else SITE / lang - folder.mkdir(exist_ok=True) - prefix = './' if lang == 'en' else '../' - url = BASE + ('' if lang == 'en' else lang + '/') - nav = ''.join(f'{e(v["name"])}' for code,v in data.items()) - alternates = ''.join(f'' for code in data) - pics = ''.join(f'
{e(cap)}
{e(cap)}
' for pic,cap in zip(['home','settings'],d['captions'])) - (folder/'index.html').write_text(f''' - -DiPlay · {e(d['download'])} -{alternates} - -
-
DiPlay{e(d['tag'])}
-
{e(d['badge'])} · 0.2.8

{e(d['title']).replace(chr(10),'
')}

{e(d['intro'])}

{e(d['promise'])}

{e(d['requires'])}

{e(d['supportScope'])}

- -
01

{e(d['setup'])}

    {''.join('
  1. '+e(x)+'
  2. ' for x in d['steps'])}

{e(d['bssid'])}

{e(d['adb'])} ↗
-
02

{e(d['whats'])}

    {''.join('
  • '+e(x)+'
  • ' for x in d['features'])}
{e(d['notes'])} ↗

{e(d['compat'])}

{e(d['compatText'])}

-

{e(d['follow'])}

{e(d['followText'])}

{e(d['telegram'])} ↗
-

{e(d['update'])}

{e(d['updateText'])}

- -
''') -print('Generated', len(data), 'language pages') diff --git a/shared/src/main/ic_launcher-playstore.png b/shared/src/main/ic_launcher-playstore.png index b7be9eb06e..38289bb8a9 100644 Binary files a/shared/src/main/ic_launcher-playstore.png and b/shared/src/main/ic_launcher-playstore.png differ diff --git a/shared/src/main/res/mipmap-hdpi/ic_launcher.webp b/shared/src/main/res/mipmap-hdpi/ic_launcher.webp index 218fd9c332..6e6b7927d5 100644 Binary files a/shared/src/main/res/mipmap-hdpi/ic_launcher.webp and b/shared/src/main/res/mipmap-hdpi/ic_launcher.webp differ diff --git a/shared/src/main/res/mipmap-hdpi/ic_launcher_background.webp b/shared/src/main/res/mipmap-hdpi/ic_launcher_background.webp index cf3f376f31..79e9ee2c97 100644 Binary files a/shared/src/main/res/mipmap-hdpi/ic_launcher_background.webp and b/shared/src/main/res/mipmap-hdpi/ic_launcher_background.webp differ diff --git a/shared/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp b/shared/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp index ed67999196..a715b5acd5 100644 Binary files a/shared/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp and b/shared/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp differ diff --git a/shared/src/main/res/mipmap-hdpi/ic_launcher_monochrome.webp b/shared/src/main/res/mipmap-hdpi/ic_launcher_monochrome.webp index 64fee0f401..f9670ddefa 100644 Binary files a/shared/src/main/res/mipmap-hdpi/ic_launcher_monochrome.webp and b/shared/src/main/res/mipmap-hdpi/ic_launcher_monochrome.webp differ diff --git a/shared/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/shared/src/main/res/mipmap-hdpi/ic_launcher_round.webp index daac315cb4..67c4226d26 100644 Binary files a/shared/src/main/res/mipmap-hdpi/ic_launcher_round.webp and b/shared/src/main/res/mipmap-hdpi/ic_launcher_round.webp differ diff --git a/shared/src/main/res/mipmap-mdpi/ic_launcher.webp b/shared/src/main/res/mipmap-mdpi/ic_launcher.webp index 4d25ca27ff..6ed3061ce9 100644 Binary files a/shared/src/main/res/mipmap-mdpi/ic_launcher.webp and b/shared/src/main/res/mipmap-mdpi/ic_launcher.webp differ diff --git a/shared/src/main/res/mipmap-mdpi/ic_launcher_background.webp b/shared/src/main/res/mipmap-mdpi/ic_launcher_background.webp index c578340a01..1e1c62f20b 100644 Binary files a/shared/src/main/res/mipmap-mdpi/ic_launcher_background.webp and b/shared/src/main/res/mipmap-mdpi/ic_launcher_background.webp differ diff --git a/shared/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp b/shared/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp index 3376dc73c4..4423e0dbe9 100644 Binary files a/shared/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp and b/shared/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp differ diff --git a/shared/src/main/res/mipmap-mdpi/ic_launcher_monochrome.webp b/shared/src/main/res/mipmap-mdpi/ic_launcher_monochrome.webp index f40b4b64ec..9a6bb616d9 100644 Binary files a/shared/src/main/res/mipmap-mdpi/ic_launcher_monochrome.webp and b/shared/src/main/res/mipmap-mdpi/ic_launcher_monochrome.webp differ diff --git a/shared/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/shared/src/main/res/mipmap-mdpi/ic_launcher_round.webp index 283a60f297..12d8a2571d 100644 Binary files a/shared/src/main/res/mipmap-mdpi/ic_launcher_round.webp and b/shared/src/main/res/mipmap-mdpi/ic_launcher_round.webp differ diff --git a/shared/src/main/res/mipmap-xhdpi/ic_launcher.webp b/shared/src/main/res/mipmap-xhdpi/ic_launcher.webp index cfc04b6336..8f94c01ac4 100644 Binary files a/shared/src/main/res/mipmap-xhdpi/ic_launcher.webp and b/shared/src/main/res/mipmap-xhdpi/ic_launcher.webp differ diff --git a/shared/src/main/res/mipmap-xhdpi/ic_launcher_background.webp b/shared/src/main/res/mipmap-xhdpi/ic_launcher_background.webp index f41c80b889..59e738c558 100644 Binary files a/shared/src/main/res/mipmap-xhdpi/ic_launcher_background.webp and b/shared/src/main/res/mipmap-xhdpi/ic_launcher_background.webp differ diff --git a/shared/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp b/shared/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp index dc9bff0477..d2896320b6 100644 Binary files a/shared/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp and b/shared/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp differ diff --git a/shared/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.webp b/shared/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.webp index b99acd48be..536b08512f 100644 Binary files a/shared/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.webp and b/shared/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.webp differ diff --git a/shared/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/shared/src/main/res/mipmap-xhdpi/ic_launcher_round.webp index ab28d95d37..5d252ebeb6 100644 Binary files a/shared/src/main/res/mipmap-xhdpi/ic_launcher_round.webp and b/shared/src/main/res/mipmap-xhdpi/ic_launcher_round.webp differ diff --git a/shared/src/main/res/mipmap-xxhdpi/ic_launcher.webp b/shared/src/main/res/mipmap-xxhdpi/ic_launcher.webp index 67b3302359..55c246b56a 100644 Binary files a/shared/src/main/res/mipmap-xxhdpi/ic_launcher.webp and b/shared/src/main/res/mipmap-xxhdpi/ic_launcher.webp differ diff --git a/shared/src/main/res/mipmap-xxhdpi/ic_launcher_background.webp b/shared/src/main/res/mipmap-xxhdpi/ic_launcher_background.webp index 24e8fd703f..4d7e544506 100644 Binary files a/shared/src/main/res/mipmap-xxhdpi/ic_launcher_background.webp and b/shared/src/main/res/mipmap-xxhdpi/ic_launcher_background.webp differ diff --git a/shared/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp b/shared/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp index d571075135..197123f7a7 100644 Binary files a/shared/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp and b/shared/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp differ diff --git a/shared/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.webp b/shared/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.webp index 5641722930..8f6744c0cf 100644 Binary files a/shared/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.webp and b/shared/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.webp differ diff --git a/shared/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/shared/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp index 40dbf4d359..428b759c26 100644 Binary files a/shared/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp and b/shared/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp differ diff --git a/shared/src/main/res/mipmap-xxxhdpi/ic_launcher.webp b/shared/src/main/res/mipmap-xxxhdpi/ic_launcher.webp index 83a3cec86d..50225025b6 100644 Binary files a/shared/src/main/res/mipmap-xxxhdpi/ic_launcher.webp and b/shared/src/main/res/mipmap-xxxhdpi/ic_launcher.webp differ diff --git a/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_background.webp b/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_background.webp index 0458418894..d95e7a841e 100644 Binary files a/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_background.webp and b/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_background.webp differ diff --git a/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp b/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp index a1e28ab037..e889fbe1fb 100644 Binary files a/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp and b/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp differ diff --git a/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp b/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp index a3b1449b5e..db13e688b0 100644 Binary files a/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp and b/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp differ diff --git a/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp b/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp index 15c0868dfb..2e89973a4c 100644 Binary files a/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp and b/shared/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp differ diff --git a/site/ar/index.html b/site/ar/index.html deleted file mode 100644 index 1f1c142104..0000000000 --- a/site/ar/index.html +++ /dev/null @@ -1,15 +0,0 @@ - - -DiPlay · تنزيل APK - - -
-
DiPlayمشروع مجتمعي مستقل
-
نسخة تجريبية عامة · 0.2.8

آيفونك.
على شاشة سيارتك.

خرائطك وموسيقاك ومحادثاتك على شاشة السيارة. يوفّر DiPlay كار بلاي سلكياً ولاسلكياً لشاشات أندرويد المتوافقة، بواجهة مألوفة من DiAuto.

لا حاجة إلى جيلبريك أو قطعة خارجية أو حساب أو خادم مصادقة.

ثبّت التطبيق على شاشة السيارة، وليس الآيفون. يستخدم الاتصال اللاسلكي نقطة اتصال السيارة أو Wi-Fi Direct على أندرويد 10 فأحدث. يعتمد التوافق على الشاشة ونظامها وإصدار iOS.

يركز هذان المشروعان على سيارات BYD. قد يعملان على علامات أخرى، لكنها غير مدعومة، ولا توجد خطط لإضافة دعم لها أو إصلاح مشكلات التوافق الخاصة بها.

- -
01

التثبيت على شاشة السيارة

  1. والسيارة متوقفة، نزّل ملف APK وثبّته بالطريقة التي تدعمها شاشة سيارتك.
  2. افتح DiPlay وامنح أذونات البلوتوث والواي فاي/الموقع والميكروفون المطلوبة.
  3. شغّل نقطة اتصال السيارة المدمجة واختر 5 غيغاهرتز إن توفر. من الإعدادات ← إعداد الاتصال، اختر نقطة اتصال السيارة وأدخل الاسم وكلمة المرور بدقة. أبقِ Wi-Fi وBluetooth مفعّلين على الهاتف، واقرنه بالسيارة، ثم اضغط توصيل الهاتف ووافق على الطلبات.
  4. للاتصال السلكي، استخدم كابل USB يدعم نقل البيانات واختر Connect with USB. وافق على طلبات USB أو الوثوق أو اتصال VPN المحلي إن ظهرت.

لا تحتاج إلى ADB للاستخدام اليومي. تختلف طريقة تثبيت APK حسب السيارة. لا حاجة لإدخال عنوان MAC يدوياً.

دليل التثبيت والمساعدة في الاتصال ↗
-
02

في هذا الإصدار

  • يستمر إرسال الموقع عند انتقال CarPlay اللاسلكي من Bluetooth إلى Wi-Fi، مع تحديث واحد كحد أقصى في الثانية عبر Wi-Fi وUSB.
  • ميزة اختيارية تتطلب ADB ترسل سرعة العجلات وناقل الحركة إلى iPhone للمساعدة على تقدير الحركة عند غياب GPS؛ لم يُتحقق من استخدامها في الأنفاق بعد.
  • تشغّل ميزة اختيارية فيديوهات iOS 27 المدعومة على شاشة السيارة أثناء الوقوف، ويُغلق المشغل عند الخروج من وضع P. يمكن التحكم من iPhone أو الشاشة أو المقود.
  • لا تدعم DiPlay الفيديو المحمي بحقوق رقمية مثل Apple TV+ لأنها ليست مستقبلاً مرخّصًا من FairPlay.
  • واجهة التطبيق بالإنجليزية والصينية المبسطة والعربية والروسية والإسبانية، مع مزامنة لغة التطبيق مع Android.
  • أزرار وسائط المقود وفتح Siri بالضغط المطوّل على الأنظمة المدعومة أثناء ظهور CarPlay.
  • خيارات لوحة العدادات: الخريطة أو بطاقة الانعطاف أو كلاهما، مع إصلاح استعادة إطارات اللوحة.
  • ميزة ADB اختيارية على DiLink 5.0 المدعوم: إيقاف بث خريطة العدادات عندما يخفيها وضع العرض.
  • إرسال بيانات البطارية إلى خرائط Apple اختيارياً عبر ADB، مع حد تحذير ونوع موصل الشحن وإعادة اتصال بعد التحقق.
  • إصلاحات لاستقرار الصوت وإعدادات أوضح للوحة العدادات.
ملاحظات الإصدار وبصمات التحقق ↗

قبل التجربة

نسخة تجريبية عامة غير معتمدة من Apple. تستخدم المصادقة هوية ملحق تجريبية مستخرجة من برنامج ثابت منشور، ولا يُضمن استمرار قبولها مستقبلاً. قد يستمر التقطّع أو عدم تطبيق حجم الأيقونات على بعض الشاشات. ابدأ بمعدل 30 إطاراً مع تعطيل HEVC، وجرّب دقة أقل عند الحاجة.

-

تابع التحديثات

الأخبار والإصدارات الجديدة على تيليجرام.

تابع على تيليجرام ↗
-

التحديثات والتوقيع

ثبّت فوق الإصدار العام السابق للاحتفاظ بالإعدادات؛ مفتاح التوقيع لم يتغير. إصدارات الاختبار تستخدم حزمة تطبيق منفصلة.

- -
\ No newline at end of file diff --git a/site/assets/home.png b/site/assets/home.png deleted file mode 100644 index 21197f4ae8..0000000000 Binary files a/site/assets/home.png and /dev/null differ diff --git a/site/assets/icon.png b/site/assets/icon.png deleted file mode 100644 index 1f7e3f07ed..0000000000 Binary files a/site/assets/icon.png and /dev/null differ diff --git a/site/assets/icon.svg b/site/assets/icon.svg new file mode 100644 index 0000000000..58b948dd8f --- /dev/null +++ b/site/assets/icon.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/site/assets/screen-1.png b/site/assets/screen-1.png new file mode 100644 index 0000000000..68dd5fcbfa Binary files /dev/null and b/site/assets/screen-1.png differ diff --git a/site/assets/screen-2.png b/site/assets/screen-2.png new file mode 100644 index 0000000000..340616472f Binary files /dev/null and b/site/assets/screen-2.png differ diff --git a/site/assets/screen-3.png b/site/assets/screen-3.png new file mode 100644 index 0000000000..502827b6c8 Binary files /dev/null and b/site/assets/screen-3.png differ diff --git a/site/assets/screen-4.png b/site/assets/screen-4.png new file mode 100644 index 0000000000..1c312bcf7d Binary files /dev/null and b/site/assets/screen-4.png differ diff --git a/site/assets/screen-5.png b/site/assets/screen-5.png new file mode 100644 index 0000000000..5b2950bd27 Binary files /dev/null and b/site/assets/screen-5.png differ diff --git a/site/assets/settings.png b/site/assets/settings.png deleted file mode 100644 index c5d226dc90..0000000000 Binary files a/site/assets/settings.png and /dev/null differ diff --git a/site/assets/site.css b/site/assets/site.css index 01852c6692..724be1f108 100644 --- a/site/assets/site.css +++ b/site/assets/site.css @@ -1,4 +1,19 @@ -:root{color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:#0c121c;color:#eef3fb;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;line-height:1.65}main{max-width:1160px;margin:auto;padding:36px 32px}a{color:#a6c9ff;text-underline-offset:4px}a:focus-visible{outline:3px solid #a6c9ff;outline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-bottom:30px;border-bottom:1px solid #263449}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}.brand strong{font-size:24px;letter-spacing:-.5px}.brand small{display:block;color:#a8b7cb;font-size:12px}.languages{display:flex;flex-wrap:wrap;gap:4px}.languages a{font-size:13px;min-height:44px;display:flex;align-items:center;padding:8px 12px;border-radius:10px;text-decoration:none;color:#bdcadd}.languages a[aria-current]{background:#1b2c43;color:#b9d5ff}.hero{padding:72px 0 52px;max-width:850px}.badge,.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:#aacaff}.badge{padding:7px 12px;background:#17253a;border:1px solid #304766;border-radius:8px}h1{font-size:clamp(40px,6.5vw,76px);line-height:1.1;letter-spacing:-2.5px;margin:26px 0}h2{font-size:25px;line-height:1.3;letter-spacing:-.4px;margin:0 0 18px}h3{font-size:18px;margin-top:30px}.intro{font-size:21px;line-height:1.6;color:#b9c7db;max-width:740px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:#a6c9ff;color:#102542;border:1px solid transparent;border-radius:12px;padding:14px 23px;min-height:52px;text-decoration:none;font-weight:650}.button:hover{background:#bed8ff}.button.secondary{background:#172335;border-color:#2b3d55;color:#d4e4fc}.button.secondary:hover{background:#223650}.promise{font-size:16px;font-weight:600;margin-bottom:8px}.note{font-size:14px;color:#9faec2;max-width:760px}.gallery{margin-bottom:50px}.screens{display:grid;grid-template-columns:1fr 1fr;gap:24px}figure{margin:0;min-width:0}figure:first-child{grid-column:1/-1}figure img{width:100%;height:auto;display:block;border:1px solid #2c3d53;border-radius:16px;background:#121b29}figcaption{font-size:14px;color:#a8b8ce;padding:12px 3px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.card{background:#141e2c;border:1px solid #28384d;border-radius:20px;padding:30px}.eyebrow{display:block;margin-bottom:16px}li{padding-inline-start:4px;margin-bottom:14px}ol,ul{padding-inline-start:22px;color:#b9c7da}.card p{color:#b9c7da}.updates{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:24px}.updates h2{margin-bottom:8px}.updates p{margin:0}.updates .button{flex-shrink:0}.signing{padding:36px 0;max-width:900px}.signing h2{font-size:18px}.signing p,footer{font-size:14px;color:#9faec2}footer{border-top:1px solid #263449;padding:25px 0}footer nav{display:flex;flex-wrap:wrap;gap:22px}footer a{color:#b9c7da}html[dir=rtl] h1{letter-spacing:0;line-height:1.3}html[dir=rtl] .badge{letter-spacing:0}@media(max-width:700px){main{padding:24px 20px}.hero{padding:42px 0 30px}h1{letter-spacing:-1px}.intro{font-size:18px}.screens,.grid{grid-template-columns:1fr}.card{padding:24px}.updates{align-items:flex-start;flex-direction:column}header{gap:18px}.languages a{padding:8px 10px}.gallery{margin-bottom:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}} - -/* DiPlay: two actual app screenshots, equal columns. */ -figure:first-child{grid-column:auto}.brand img{border-radius:12px}html[dir=rtl] .eyebrow{letter-spacing:0}@media(max-width:700px){figure:first-child{grid-column:1/-1}} +:root{color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif} +body{margin:0;background:#000;color:#fff;line-height:1.6} +main{max-width:680px;margin:auto;padding:56px 20px} +a{color:#f47a3a} +header h1{font-size:40px;margin:16px 0 4px;letter-spacing:-.02em} +header p{color:#98989f;font-size:18px;margin:0 0 24px} +.button{display:inline-block;background:#f47a3a;color:#fff;font-weight:600;text-decoration:none;padding:14px 22px;border-radius:12px} +.slides{position:relative;margin:48px 0} +.track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:14px;border:1px solid #38383a} +.track::-webkit-scrollbar{display:none} +.track img{flex:0 0 100%;width:100%;height:auto;scroll-snap-align:start} +.slides button{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border:0;border-radius:50%;background:rgba(44,44,46,.85);color:#fff;font-size:24px;line-height:1;cursor:pointer} +.prev{left:8px}.next{right:8px} +@media(prefers-reduced-motion:reduce){.track{scroll-behavior:auto}} +h2{font-size:22px;margin:40px 0 8px} +ul,ol{padding-left:22px}li{margin:4px 0} +.muted,footer{color:#98989f;font-size:14px} +footer{margin-top:56px;border-top:1px solid #38383a;padding-top:16px} +footer a{color:#98989f} diff --git a/site/content.json b/site/content.json deleted file mode 100644 index a4ab8e8427..0000000000 --- a/site/content.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "en": { - "name": "English", - "dir": "ltr", - "tag": "Independent community project", - "badge": "PUBLIC PREVIEW", - "title": "Your iPhone.\nAt home in your car.", - "intro": "Maps, music and conversations on your car display. DiPlay brings wired and wireless CarPlay to compatible Android head units, with the familiar DiAuto interface.", - "download": "Download APK", - "install": "How to install", - "promise": "No jailbreak, dongle, account or authentication server required.", - "requires": "Install on the car, not the iPhone. Wireless uses the built-in car hotspot or Wi-Fi Direct (Android 10+). Compatibility depends on the head unit, firmware and iOS version.", - "gallery": "A familiar drive", - "captions": [ - "A clear home screen with aligned wireless and USB controls.", - "Display size, performance and connection settings. Screenshots show the English app interface." - ], - "setup": "Install on your car", - "steps": [ - "While parked, download the APK and install it using the method supported by your head unit.", - "Open DiPlay and allow the requested Bluetooth, Wi-Fi/location and microphone permissions.", - "Turn on the car’s built-in hotspot (5 GHz if available). In Settings → Connection setup, select Built-in car hotspot and save its exact name and password. Keep phone Wi-Fi and Bluetooth on, pair with the car, then tap Connect phone and accept the phone prompts.", - "For wired use, connect a USB data cable and choose Connect with USB. Approve any USB, Trust or local VPN prompts." - ], - "adb": "Installation & connection help", - "bssid": "ADB is not required for everyday use. APK installation options depend on the car. No manual MAC address entry.", - "whats": "In this release", - "features": [ - "Location reporting now continues across the wireless Bluetooth-to-Wi-Fi handoff, with at most one update per second over wireless and USB.", - "Optional ADB wheel-speed and gear reporting helps iPhone navigation estimate movement when GPS is unavailable; tunnel use is not yet verified.", - "Optional iOS 27 video plays on the car screen while parked and closes when the car leaves P; use the iPhone, screen or steering-wheel controls.", - "DRM-protected video such as Apple TV+ is not supported because DiPlay is not a licensed FairPlay receiver.", - "App interface in English, Simplified Chinese, Arabic, Russian and Spanish; synchronized Android app-language settings.", - "Steering-wheel media controls and long-press Siri on supported BYD firmware while CarPlay is on screen.", - "Dashboard display choices: map, turn card, or both; corrected dashboard keyframe recovery.", - "Optional ADB feature on supported DiLink 5.0: pause the dashboard map stream when its display mode hides the map.", - "Optional ADB battery reporting for Apple Maps, with warning threshold, charging-connector selection and a checked reconnect action.", - "Audio playback reliability fixes and clearer dashboard settings." - ], - "compat": "Before you try it", - "compatText": "A public preview, not an Apple-certified product. Authentication uses an experimental accessory identity recovered from public firmware; future acceptance is not guaranteed. Some head units still show stuttering or ignore icon-size changes. Start with 30 fps and HEVC off; try a lower resolution if needed.", - "update": "Updates & signing", - "updateText": "Install over the previous public release to retain settings; the public signing key is unchanged. Test builds use a separate app package.", - "follow": "Get release updates", - "followText": "News and new builds on Telegram.", - "telegram": "Follow on Telegram", - "notes": "Release notes & checksums", - "source": "Source code", - "feedback": "Report an issue", - "privacy": "Privacy", - "footer": "Independent project based on xcertplay, with interface design from DiAuto. Not affiliated with Apple or BYD. CarPlay and its icon belong to Apple Inc.", - "supportScope": "These projects focus on BYD cars. They may work on other brands, but other brands are unsupported and there are no plans to add support or fix brand-specific incompatibilities." - }, - "ar": { - "name": "العربية", - "dir": "rtl", - "tag": "مشروع مجتمعي مستقل", - "badge": "نسخة تجريبية عامة", - "title": "آيفونك.\nعلى شاشة سيارتك.", - "intro": "خرائطك وموسيقاك ومحادثاتك على شاشة السيارة. يوفّر DiPlay كار بلاي سلكياً ولاسلكياً لشاشات أندرويد المتوافقة، بواجهة مألوفة من DiAuto.", - "download": "تنزيل APK", - "install": "طريقة التثبيت", - "promise": "لا حاجة إلى جيلبريك أو قطعة خارجية أو حساب أو خادم مصادقة.", - "requires": "ثبّت التطبيق على شاشة السيارة، وليس الآيفون. يستخدم الاتصال اللاسلكي نقطة اتصال السيارة أو Wi-Fi Direct على أندرويد 10 فأحدث. يعتمد التوافق على الشاشة ونظامها وإصدار iOS.", - "gallery": "تجربة مألوفة", - "captions": [ - "واجهة واضحة مع محاذاة أزرار الاتصال اللاسلكي وUSB.", - "إعدادات حجم العرض والأداء والاتصال. الصور تعرض واجهة التطبيق الإنجليزية." - ], - "setup": "التثبيت على شاشة السيارة", - "steps": [ - "والسيارة متوقفة، نزّل ملف APK وثبّته بالطريقة التي تدعمها شاشة سيارتك.", - "افتح DiPlay وامنح أذونات البلوتوث والواي فاي/الموقع والميكروفون المطلوبة.", - "شغّل نقطة اتصال السيارة المدمجة واختر 5 غيغاهرتز إن توفر. من الإعدادات ← إعداد الاتصال، اختر نقطة اتصال السيارة وأدخل الاسم وكلمة المرور بدقة. أبقِ Wi-Fi وBluetooth مفعّلين على الهاتف، واقرنه بالسيارة، ثم اضغط توصيل الهاتف ووافق على الطلبات.", - "للاتصال السلكي، استخدم كابل USB يدعم نقل البيانات واختر Connect with USB. وافق على طلبات USB أو الوثوق أو اتصال VPN المحلي إن ظهرت." - ], - "adb": "دليل التثبيت والمساعدة في الاتصال", - "bssid": "لا تحتاج إلى ADB للاستخدام اليومي. تختلف طريقة تثبيت APK حسب السيارة. لا حاجة لإدخال عنوان MAC يدوياً.", - "whats": "في هذا الإصدار", - "features": [ - "يستمر إرسال الموقع عند انتقال CarPlay اللاسلكي من Bluetooth إلى Wi-Fi، مع تحديث واحد كحد أقصى في الثانية عبر Wi-Fi وUSB.", - "ميزة اختيارية تتطلب ADB ترسل سرعة العجلات وناقل الحركة إلى iPhone للمساعدة على تقدير الحركة عند غياب GPS؛ لم يُتحقق من استخدامها في الأنفاق بعد.", - "تشغّل ميزة اختيارية فيديوهات iOS 27 المدعومة على شاشة السيارة أثناء الوقوف، ويُغلق المشغل عند الخروج من وضع P. يمكن التحكم من iPhone أو الشاشة أو المقود.", - "لا تدعم DiPlay الفيديو المحمي بحقوق رقمية مثل Apple TV+ لأنها ليست مستقبلاً مرخّصًا من FairPlay.", - "واجهة التطبيق بالإنجليزية والصينية المبسطة والعربية والروسية والإسبانية، مع مزامنة لغة التطبيق مع Android.", - "أزرار وسائط المقود وفتح Siri بالضغط المطوّل على الأنظمة المدعومة أثناء ظهور CarPlay.", - "خيارات لوحة العدادات: الخريطة أو بطاقة الانعطاف أو كلاهما، مع إصلاح استعادة إطارات اللوحة.", - "ميزة ADB اختيارية على DiLink 5.0 المدعوم: إيقاف بث خريطة العدادات عندما يخفيها وضع العرض.", - "إرسال بيانات البطارية إلى خرائط Apple اختيارياً عبر ADB، مع حد تحذير ونوع موصل الشحن وإعادة اتصال بعد التحقق.", - "إصلاحات لاستقرار الصوت وإعدادات أوضح للوحة العدادات." - ], - "compat": "قبل التجربة", - "compatText": "نسخة تجريبية عامة غير معتمدة من Apple. تستخدم المصادقة هوية ملحق تجريبية مستخرجة من برنامج ثابت منشور، ولا يُضمن استمرار قبولها مستقبلاً. قد يستمر التقطّع أو عدم تطبيق حجم الأيقونات على بعض الشاشات. ابدأ بمعدل 30 إطاراً مع تعطيل HEVC، وجرّب دقة أقل عند الحاجة.", - "update": "التحديثات والتوقيع", - "updateText": "ثبّت فوق الإصدار العام السابق للاحتفاظ بالإعدادات؛ مفتاح التوقيع لم يتغير. إصدارات الاختبار تستخدم حزمة تطبيق منفصلة.", - "follow": "تابع التحديثات", - "followText": "الأخبار والإصدارات الجديدة على تيليجرام.", - "telegram": "تابع على تيليجرام", - "notes": "ملاحظات الإصدار وبصمات التحقق", - "source": "الكود المصدري", - "feedback": "الإبلاغ عن مشكلة", - "privacy": "الخصوصية", - "footer": "مشروع مستقل مبني على xcertplay وبتصميم واجهة من DiAuto. غير تابع لـ Apple أو BYD. كار بلاي وأيقونته ملك لشركة Apple.", - "supportScope": "يركز هذان المشروعان على سيارات BYD. قد يعملان على علامات أخرى، لكنها غير مدعومة، ولا توجد خطط لإضافة دعم لها أو إصلاح مشكلات التوافق الخاصة بها." - }, - "ru": { - "name": "Русский", - "dir": "ltr", - "tag": "Независимый проект сообщества", - "badge": "ОТКРЫТОЕ ТЕСТИРОВАНИЕ", - "title": "Ваш iPhone.\nНа экране автомобиля.", - "intro": "Карты, музыка и общение на экране автомобиля. DiPlay добавляет проводной и беспроводной CarPlay на совместимые головные устройства Android со знакомым интерфейсом DiAuto.", - "download": "Скачать APK", - "install": "Как установить", - "promise": "Без джейлбрейка, адаптера, аккаунта и сервера аутентификации.", - "requires": "Устанавливайте на головное устройство, а не на iPhone. Беспроводное подключение использует точку доступа автомобиля или Wi-Fi Direct (Android 10+). Совместимость зависит от устройства, прошивки и iOS.", - "gallery": "Знакомый интерфейс", - "captions": [ - "Главный экран с выровненными элементами беспроводного и USB-подключения.", - "Размер интерфейса, производительность и подключение. На снимках — английский интерфейс приложения." - ], - "setup": "Установка в автомобиле", - "steps": [ - "На стоянке скачайте APK и установите его способом, поддерживаемым головным устройством.", - "Откройте DiPlay и предоставьте запрошенные разрешения Bluetooth, Wi-Fi/геолокации и микрофона.", - "Включите встроенную точку доступа автомобиля (5 ГГц, если доступно). В Настройки → Настройка подключения выберите точку доступа автомобиля и сохраните её точные имя и пароль. Включите Wi-Fi и Bluetooth на телефоне, выполните сопряжение с автомобилем, нажмите «Подключить телефон» и подтвердите запросы.", - "Для проводного подключения используйте USB-кабель с передачей данных и нажмите Connect with USB. Подтвердите запросы USB, доверия и локального VPN, если они появятся." - ], - "adb": "Инструкция и помощь с подключением", - "bssid": "Для повседневной работы ADB не нужен. Способ установки APK зависит от автомобиля. Вводить MAC-адрес вручную не требуется.", - "whats": "В этом выпуске", - "features": [ - "Передача местоположения продолжается при переходе беспроводного CarPlay с Bluetooth на Wi-Fi; по Wi-Fi и USB отправляется не более одного обновления в секунду.", - "Опциональная передача скорости колёс и передачи через ADB помогает iPhone рассчитывать движение без GPS; работа в тоннелях пока не проверена.", - "Опциональная функция iOS 27 воспроизводит поддерживаемое видео на экране автомобиля на стоянке и закрывает плеер при выходе из P. Управление доступно с iPhone, экрана или руля.", - "DiPlay не поддерживает видео с DRM-защитой, например Apple TV+, поскольку не является лицензированным приёмником FairPlay.", - "Интерфейс на английском, упрощённом китайском, арабском, русском и испанском; синхронизация языка с Android.", - "Медиакнопки руля и Siri по долгому нажатию на поддерживаемых прошивках BYD, пока CarPlay на экране.", - "На приборной панели: карта, карточка поворота или оба варианта; исправлено восстановление ключевых кадров.", - "Опция с ADB для поддерживаемого DiLink 5.0: приостанавливать поток карты, когда режим приборной панели её скрывает.", - "Опциональная передача данных батареи в Apple Maps через ADB: порог предупреждения, выбор разъёмов и переподключение после проверки.", - "Исправления воспроизведения звука и более понятные настройки приборной панели." - ], - "compat": "Перед установкой", - "compatText": "Предварительная версия для открытого тестирования, без сертификации Apple. Используется экспериментальная идентификация аксессуара из общедоступной прошивки; её принятие в будущем не гарантируется. На некоторых устройствах остаются рывки изображения или не применяется размер значков. Начните с 30 кадров/с и выключенного HEVC; при необходимости снизьте разрешение.", - "update": "Обновления и подпись", - "updateText": "Установите поверх предыдущего публичного выпуска, чтобы сохранить настройки; ключ подписи не изменился. Тестовые сборки используют отдельный пакет приложения.", - "follow": "Следите за обновлениями", - "followText": "Новости и новые версии в Telegram.", - "telegram": "Подписаться в Telegram", - "notes": "Описание выпуска и контрольные суммы", - "source": "Исходный код", - "feedback": "Сообщить о проблеме", - "privacy": "Конфиденциальность", - "footer": "Независимый проект на базе xcertplay с дизайном интерфейса DiAuto. Не связан с Apple или BYD. CarPlay и его значок принадлежат Apple Inc.", - "supportScope": "Эти проекты ориентированы на автомобили BYD. На других марках они могут работать, но другие марки не поддерживаются; добавление поддержки и исправление несовместимости с ними не планируются." - }, - "es": { - "name": "Español", - "dir": "ltr", - "tag": "Proyecto comunitario independiente", - "badge": "VERSIÓN PRELIMINAR PÚBLICA", - "title": "Tu iPhone.\nEn la pantalla de tu coche.", - "intro": "Mapas, música y conversaciones en la pantalla del coche. DiPlay ofrece CarPlay por USB e inalámbrico en unidades Android compatibles, con la interfaz familiar de DiAuto.", - "download": "Descargar APK", - "install": "Cómo instalar", - "promise": "Sin jailbreak, adaptador, cuenta ni servidor de autenticación.", - "requires": "Instala en el coche, no en el iPhone. La conexión inalámbrica usa el punto de acceso del coche o Wi-Fi Direct (Android 10+). La compatibilidad depende del equipo, firmware e iOS.", - "gallery": "Una experiencia familiar", - "captions": [ - "Pantalla de inicio con los controles inalámbricos y USB alineados.", - "Tamaño de interfaz, rendimiento y conexión. Las capturas muestran la app en inglés." - ], - "setup": "Instalar en el coche", - "steps": [ - "Con el coche estacionado, descarga el APK e instálalo mediante el método que admita tu unidad.", - "Abre DiPlay y concede los permisos solicitados de Bluetooth, Wi-Fi/ubicación y micrófono.", - "Activa el punto de acceso integrado del coche (5 GHz si está disponible). En Ajustes → Configuración de conexión, selecciónalo y guarda su nombre y contraseña exactos. Mantén Wi-Fi y Bluetooth activos en el teléfono, emparéjalo con el coche, pulsa Conectar teléfono y acepta las indicaciones.", - "Para USB, usa un cable de datos y pulsa Connect with USB. Acepta las solicitudes de USB, confianza o VPN local que aparezcan." - ], - "adb": "Guía de instalación y conexión", - "bssid": "No necesitas ADB para el uso diario. El método de instalación del APK depende del coche. No hay que introducir direcciones MAC.", - "whats": "En esta versión", - "features": [ - "La ubicación sigue enviándose al pasar de Bluetooth a Wi-Fi en CarPlay inalámbrico, con un máximo de una actualización por segundo por Wi-Fi y USB.", - "La velocidad de las ruedas y la marcha opcionales mediante ADB ayudan al iPhone a estimar el movimiento cuando no hay GPS; aún no se ha verificado su uso en túneles.", - "La función opcional de iOS 27 reproduce vídeos compatibles en la pantalla del coche mientras está aparcado y cierra el reproductor al salir de P. Se controla desde el iPhone, la pantalla o el volante.", - "DiPlay no admite vídeo protegido por DRM, como Apple TV+, porque no es un receptor FairPlay con licencia.", - "Interfaz en inglés, chino simplificado, árabe, ruso y español; idioma sincronizado con Android.", - "Controles multimedia del volante y Siri con pulsación larga en firmware BYD compatible, mientras CarPlay está en pantalla.", - "Opciones del cuadro: mapa, tarjeta de giro o ambos; recuperación de fotogramas clave corregida.", - "Opción con ADB en DiLink 5.0 compatible: pausar la transmisión del mapa cuando el modo del cuadro lo oculta.", - "Datos de batería opcionales para Apple Maps mediante ADB, con umbral de aviso, selección de conectores y reconexión tras comprobar los datos.", - "Mejoras de fiabilidad del audio y ajustes del cuadro más claros." - ], - "compat": "Antes de probar", - "compatText": "Versión preliminar pública sin certificación de Apple. Usa una identidad de accesorio experimental obtenida de firmware público; no se garantiza su aceptación futura. Algunos equipos aún presentan tirones o no aplican los cambios de tamaño de iconos. Empieza con 30 fps y HEVC desactivado; reduce la resolución si hace falta.", - "update": "Actualizaciones y firma", - "updateText": "Instala sobre la versión pública anterior para conservar los ajustes; la clave de firma no cambia. Las versiones de prueba usan un paquete de aplicación separado.", - "follow": "Recibe novedades", - "followText": "Noticias y nuevas versiones en Telegram.", - "telegram": "Seguir en Telegram", - "notes": "Notas y sumas de comprobación", - "source": "Código fuente", - "feedback": "Informar de un problema", - "privacy": "Privacidad", - "footer": "Proyecto independiente basado en xcertplay, con diseño de interfaz de DiAuto. Sin afiliación a Apple ni BYD. CarPlay y su icono pertenecen a Apple Inc.", - "supportScope": "Estos proyectos se centran en coches BYD. Pueden funcionar en otras marcas, pero no se ofrece soporte para ellas ni hay planes de añadirlo o corregir incompatibilidades específicas." - }, - "zh-Hans": { - "name": "简体中文", - "dir": "ltr", - "tag": "独立社区项目", - "badge": "公开预览版", - "title": "你的 iPhone。\n你的车载屏幕。", - "intro": "在车载屏幕上使用地图、音乐和通话。DiPlay 为兼容的安卓车机带来有线和无线 CarPlay,采用熟悉的 DiAuto 界面。", - "download": "下载 APK", - "install": "安装方法", - "promise": "无需越狱、转接盒、账号或认证服务器。", - "requires": "请安装在车机上,而非 iPhone 上。无线连接使用车机内置热点或 Wi-Fi Direct(Android 10 及以上)。兼容性取决于车机、固件和 iOS 版本。", - "gallery": "熟悉的驾乘体验", - "captions": [ - "无线和 USB 连接控件整齐对齐的主界面。", - "界面大小、性能和连接设置。截图展示的是英文应用界面。" - ], - "setup": "安装到车机", - "steps": [ - "停车后下载 APK,并通过车机支持的方式安装。", - "打开 DiPlay,授予所需的蓝牙、Wi-Fi/位置及麦克风权限。", - "开启车机内置热点,如可选请使用 5 GHz。在“设置 → 连接设置”中选择车机内置热点,准确填写并保存名称和密码。保持手机 Wi-Fi 和蓝牙开启,与车机配对后点击“连接手机”,并同意手机上的提示。", - "有线连接请使用 USB 数据线,并点击 Connect with USB。如出现 USB、信任或本地 VPN 提示,请确认。" - ], - "adb": "安装与连接指南", - "bssid": "日常使用不需要 ADB。APK 安装方式取决于车机。无需手动输入 MAC 地址。", - "whats": "本次更新", - "features": [ - "无线 CarPlay 从蓝牙切换到 Wi-Fi 时,位置上报会继续进行;Wi-Fi 和 USB 连接下的更新频率均为每秒最多一次。", - "可选的 ADB 车轮速度和挡位上报可帮助 iPhone 在没有 GPS 时推算车辆移动;隧道效果尚未验证。", - "可选的 iOS 27 驻车视频功能可在车辆处于 P 挡时于车机屏幕播放受支持的视频,离开 P 挡后播放器会关闭;可通过 iPhone、触屏或方向盘控制。", - "DiPlay 不是获得 FairPlay 授权的接收器,因此不支持 Apple TV+ 等受 DRM 保护的视频。", - "界面支持英语、简体中文、阿拉伯语、俄语和西班牙语,并与 Android 应用语言设置同步。", - "在支持的比亚迪固件上,可使用方向盘媒体按键,并在 CarPlay 显示时长按语音键唤起 Siri。", - "仪表盘可显示地图、转向卡片或两者;修复仪表盘关键帧恢复。", - "支持的 DiLink 5.0 可选 ADB 功能:仪表盘显示模式隐藏地图时暂停地图传输。", - "可选通过 ADB 向 Apple 地图报告电池数据,支持低电量阈值、充电接口选择和检查后重新连接。", - "修复音频播放稳定性问题,优化仪表盘设置用语。" - ], - "compat": "试用前请了解", - "compatText": "这是公开预览版,未经 Apple 认证。认证使用从公开固件中提取的实验性配件身份,无法保证未来持续可用。部分车机仍可能出现卡顿或图标大小调整不生效。建议先使用 30 fps 并关闭 HEVC,必要时降低分辨率。", - "update": "更新与签名", - "updateText": "覆盖安装到之前的公开版本即可保留设置,公开版签名密钥不变。测试版使用独立的应用包名。", - "follow": "获取更新", - "followText": "在 Telegram 上关注项目消息和新版本。", - "telegram": "关注 Telegram", - "notes": "发布说明与校验值", - "source": "源代码", - "feedback": "报告问题", - "privacy": "隐私", - "footer": "基于 xcertplay 的独立项目,界面设计源自 DiAuto。与 Apple 或比亚迪无隶属关系。CarPlay 及其图标归 Apple Inc. 所有。", - "supportScope": "这些项目专注于比亚迪汽车。它们可能在其他品牌上运行,但其他品牌不在支持范围内,也没有增加支持或修复其品牌特定兼容性问题的计划。" - } -} diff --git a/site/es/index.html b/site/es/index.html deleted file mode 100644 index 2a62e1a56b..0000000000 --- a/site/es/index.html +++ /dev/null @@ -1,15 +0,0 @@ - - -DiPlay · Descargar APK - - -
-
DiPlayProyecto comunitario independiente
-
VERSIÓN PRELIMINAR PÚBLICA · 0.2.8

Tu iPhone.
En la pantalla de tu coche.

Mapas, música y conversaciones en la pantalla del coche. DiPlay ofrece CarPlay por USB e inalámbrico en unidades Android compatibles, con la interfaz familiar de DiAuto.

Sin jailbreak, adaptador, cuenta ni servidor de autenticación.

Instala en el coche, no en el iPhone. La conexión inalámbrica usa el punto de acceso del coche o Wi-Fi Direct (Android 10+). La compatibilidad depende del equipo, firmware e iOS.

Estos proyectos se centran en coches BYD. Pueden funcionar en otras marcas, pero no se ofrece soporte para ellas ni hay planes de añadirlo o corregir incompatibilidades específicas.

- -
01

Instalar en el coche

  1. Con el coche estacionado, descarga el APK e instálalo mediante el método que admita tu unidad.
  2. Abre DiPlay y concede los permisos solicitados de Bluetooth, Wi-Fi/ubicación y micrófono.
  3. Activa el punto de acceso integrado del coche (5 GHz si está disponible). En Ajustes → Configuración de conexión, selecciónalo y guarda su nombre y contraseña exactos. Mantén Wi-Fi y Bluetooth activos en el teléfono, emparéjalo con el coche, pulsa Conectar teléfono y acepta las indicaciones.
  4. Para USB, usa un cable de datos y pulsa Connect with USB. Acepta las solicitudes de USB, confianza o VPN local que aparezcan.

No necesitas ADB para el uso diario. El método de instalación del APK depende del coche. No hay que introducir direcciones MAC.

Guía de instalación y conexión ↗
-
02

En esta versión

  • La ubicación sigue enviándose al pasar de Bluetooth a Wi-Fi en CarPlay inalámbrico, con un máximo de una actualización por segundo por Wi-Fi y USB.
  • La velocidad de las ruedas y la marcha opcionales mediante ADB ayudan al iPhone a estimar el movimiento cuando no hay GPS; aún no se ha verificado su uso en túneles.
  • La función opcional de iOS 27 reproduce vídeos compatibles en la pantalla del coche mientras está aparcado y cierra el reproductor al salir de P. Se controla desde el iPhone, la pantalla o el volante.
  • DiPlay no admite vídeo protegido por DRM, como Apple TV+, porque no es un receptor FairPlay con licencia.
  • Interfaz en inglés, chino simplificado, árabe, ruso y español; idioma sincronizado con Android.
  • Controles multimedia del volante y Siri con pulsación larga en firmware BYD compatible, mientras CarPlay está en pantalla.
  • Opciones del cuadro: mapa, tarjeta de giro o ambos; recuperación de fotogramas clave corregida.
  • Opción con ADB en DiLink 5.0 compatible: pausar la transmisión del mapa cuando el modo del cuadro lo oculta.
  • Datos de batería opcionales para Apple Maps mediante ADB, con umbral de aviso, selección de conectores y reconexión tras comprobar los datos.
  • Mejoras de fiabilidad del audio y ajustes del cuadro más claros.
Notas y sumas de comprobación ↗

Antes de probar

Versión preliminar pública sin certificación de Apple. Usa una identidad de accesorio experimental obtenida de firmware público; no se garantiza su aceptación futura. Algunos equipos aún presentan tirones o no aplican los cambios de tamaño de iconos. Empieza con 30 fps y HEVC desactivado; reduce la resolución si hace falta.

-

Recibe novedades

Noticias y nuevas versiones en Telegram.

Seguir en Telegram ↗
-

Actualizaciones y firma

Instala sobre la versión pública anterior para conservar los ajustes; la clave de firma no cambia. Las versiones de prueba usan un paquete de aplicación separado.

- -
\ No newline at end of file diff --git a/site/index.html b/site/index.html index 36049e1dde..14c42caf69 100644 --- a/site/index.html +++ b/site/index.html @@ -1,15 +1,63 @@ - -DiPlay · Download APK - - -
-
DiPlayIndependent community project
-
PUBLIC PREVIEW · 0.2.8

Your iPhone.
At home in your car.

Maps, music and conversations on your car display. DiPlay brings wired and wireless CarPlay to compatible Android head units, with the familiar DiAuto interface.

No jailbreak, dongle, account or authentication server required.

Install on the car, not the iPhone. Wireless uses the built-in car hotspot or Wi-Fi Direct (Android 10+). Compatibility depends on the head unit, firmware and iOS version.

These projects focus on BYD cars. They may work on other brands, but other brands are unsupported and there are no plans to add support or fix brand-specific incompatibilities.

- -
01

Install on your car

  1. While parked, download the APK and install it using the method supported by your head unit.
  2. Open DiPlay and allow the requested Bluetooth, Wi-Fi/location and microphone permissions.
  3. Turn on the car’s built-in hotspot (5 GHz if available). In Settings → Connection setup, select Built-in car hotspot and save its exact name and password. Keep phone Wi-Fi and Bluetooth on, pair with the car, then tap Connect phone and accept the phone prompts.
  4. For wired use, connect a USB data cable and choose Connect with USB. Approve any USB, Trust or local VPN prompts.

ADB is not required for everyday use. APK installation options depend on the car. No manual MAC address entry.

Installation & connection help ↗
-
02

In this release

  • Location reporting now continues across the wireless Bluetooth-to-Wi-Fi handoff, with at most one update per second over wireless and USB.
  • Optional ADB wheel-speed and gear reporting helps iPhone navigation estimate movement when GPS is unavailable; tunnel use is not yet verified.
  • Optional iOS 27 video plays on the car screen while parked and closes when the car leaves P; use the iPhone, screen or steering-wheel controls.
  • DRM-protected video such as Apple TV+ is not supported because DiPlay is not a licensed FairPlay receiver.
  • App interface in English, Simplified Chinese, Arabic, Russian and Spanish; synchronized Android app-language settings.
  • Steering-wheel media controls and long-press Siri on supported BYD firmware while CarPlay is on screen.
  • Dashboard display choices: map, turn card, or both; corrected dashboard keyframe recovery.
  • Optional ADB feature on supported DiLink 5.0: pause the dashboard map stream when its display mode hides the map.
  • Optional ADB battery reporting for Apple Maps, with warning threshold, charging-connector selection and a checked reconnect action.
  • Audio playback reliability fixes and clearer dashboard settings.
Release notes & checksums ↗

Before you try it

A public preview, not an Apple-certified product. Authentication uses an experimental accessory identity recovered from public firmware; future acceptance is not guaranteed. Some head units still show stuttering or ignore icon-size changes. Start with 30 fps and HEVC off; try a lower resolution if needed.

-

Get release updates

News and new builds on Telegram.

Follow on Telegram ↗
-

Updates & signing

Install over the previous public release to retain settings; the public signing key is unchanged. Test builds use a separate app package.

- -
\ No newline at end of file + + + + +LoopLink + + + + + + + + + +
+
+ +

LoopLink

+

CarPlay for Android car head units. Wired or wireless.

+ Download APK +
+ +
+
+ Home screen with Connect phone, Connect with USB and Settings + Connection setup + Settings + Automatic connection and display settings + Advanced settings +
+ + +
+ +

Works with

+
    +
  • Suzuki Swift
  • +
  • Toyota Corolla Altis
  • +
  • Honda City
  • +
  • Generic Android panels in other cars
  • +
+

Pakistani models with an aftermarket Android panel. The panel needs Android 9 or newer, Bluetooth and Wi-Fi. Wi-Fi Direct needs Android 10.

+ +

Install

+
    +
  1. Install the APK on the head unit.
  2. +
  3. Pair your iPhone with the car's Bluetooth.
  4. +
  5. Open LoopLink and tap Connect phone, or Connect with USB.
  6. +
+ + +
+ + + diff --git a/site/ru/index.html b/site/ru/index.html deleted file mode 100644 index 149ed771b6..0000000000 --- a/site/ru/index.html +++ /dev/null @@ -1,15 +0,0 @@ - - -DiPlay · Скачать APK - - -
-
DiPlayНезависимый проект сообщества
-
ОТКРЫТОЕ ТЕСТИРОВАНИЕ · 0.2.8

Ваш iPhone.
На экране автомобиля.

Карты, музыка и общение на экране автомобиля. DiPlay добавляет проводной и беспроводной CarPlay на совместимые головные устройства Android со знакомым интерфейсом DiAuto.

Без джейлбрейка, адаптера, аккаунта и сервера аутентификации.

Устанавливайте на головное устройство, а не на iPhone. Беспроводное подключение использует точку доступа автомобиля или Wi-Fi Direct (Android 10+). Совместимость зависит от устройства, прошивки и iOS.

Эти проекты ориентированы на автомобили BYD. На других марках они могут работать, но другие марки не поддерживаются; добавление поддержки и исправление несовместимости с ними не планируются.

- -
01

Установка в автомобиле

  1. На стоянке скачайте APK и установите его способом, поддерживаемым головным устройством.
  2. Откройте DiPlay и предоставьте запрошенные разрешения Bluetooth, Wi-Fi/геолокации и микрофона.
  3. Включите встроенную точку доступа автомобиля (5 ГГц, если доступно). В Настройки → Настройка подключения выберите точку доступа автомобиля и сохраните её точные имя и пароль. Включите Wi-Fi и Bluetooth на телефоне, выполните сопряжение с автомобилем, нажмите «Подключить телефон» и подтвердите запросы.
  4. Для проводного подключения используйте USB-кабель с передачей данных и нажмите Connect with USB. Подтвердите запросы USB, доверия и локального VPN, если они появятся.

Для повседневной работы ADB не нужен. Способ установки APK зависит от автомобиля. Вводить MAC-адрес вручную не требуется.

Инструкция и помощь с подключением ↗
-
02

В этом выпуске

  • Передача местоположения продолжается при переходе беспроводного CarPlay с Bluetooth на Wi-Fi; по Wi-Fi и USB отправляется не более одного обновления в секунду.
  • Опциональная передача скорости колёс и передачи через ADB помогает iPhone рассчитывать движение без GPS; работа в тоннелях пока не проверена.
  • Опциональная функция iOS 27 воспроизводит поддерживаемое видео на экране автомобиля на стоянке и закрывает плеер при выходе из P. Управление доступно с iPhone, экрана или руля.
  • DiPlay не поддерживает видео с DRM-защитой, например Apple TV+, поскольку не является лицензированным приёмником FairPlay.
  • Интерфейс на английском, упрощённом китайском, арабском, русском и испанском; синхронизация языка с Android.
  • Медиакнопки руля и Siri по долгому нажатию на поддерживаемых прошивках BYD, пока CarPlay на экране.
  • На приборной панели: карта, карточка поворота или оба варианта; исправлено восстановление ключевых кадров.
  • Опция с ADB для поддерживаемого DiLink 5.0: приостанавливать поток карты, когда режим приборной панели её скрывает.
  • Опциональная передача данных батареи в Apple Maps через ADB: порог предупреждения, выбор разъёмов и переподключение после проверки.
  • Исправления воспроизведения звука и более понятные настройки приборной панели.
Описание выпуска и контрольные суммы ↗

Перед установкой

Предварительная версия для открытого тестирования, без сертификации Apple. Используется экспериментальная идентификация аксессуара из общедоступной прошивки; её принятие в будущем не гарантируется. На некоторых устройствах остаются рывки изображения или не применяется размер значков. Начните с 30 кадров/с и выключенного HEVC; при необходимости снизьте разрешение.

-

Следите за обновлениями

Новости и новые версии в Telegram.

Подписаться в Telegram ↗
-

Обновления и подпись

Установите поверх предыдущего публичного выпуска, чтобы сохранить настройки; ключ подписи не изменился. Тестовые сборки используют отдельный пакет приложения.

- -
\ No newline at end of file diff --git a/site/zh-Hans/index.html b/site/zh-Hans/index.html deleted file mode 100644 index 6cbe13ca7c..0000000000 --- a/site/zh-Hans/index.html +++ /dev/null @@ -1,15 +0,0 @@ - - -DiPlay · 下载 APK - - -
-
DiPlay独立社区项目
-
公开预览版 · 0.2.8

你的 iPhone。
你的车载屏幕。

在车载屏幕上使用地图、音乐和通话。DiPlay 为兼容的安卓车机带来有线和无线 CarPlay,采用熟悉的 DiAuto 界面。

无需越狱、转接盒、账号或认证服务器。

请安装在车机上,而非 iPhone 上。无线连接使用车机内置热点或 Wi-Fi Direct(Android 10 及以上)。兼容性取决于车机、固件和 iOS 版本。

这些项目专注于比亚迪汽车。它们可能在其他品牌上运行,但其他品牌不在支持范围内,也没有增加支持或修复其品牌特定兼容性问题的计划。

- -
01

安装到车机

  1. 停车后下载 APK,并通过车机支持的方式安装。
  2. 打开 DiPlay,授予所需的蓝牙、Wi-Fi/位置及麦克风权限。
  3. 开启车机内置热点,如可选请使用 5 GHz。在“设置 → 连接设置”中选择车机内置热点,准确填写并保存名称和密码。保持手机 Wi-Fi 和蓝牙开启,与车机配对后点击“连接手机”,并同意手机上的提示。
  4. 有线连接请使用 USB 数据线,并点击 Connect with USB。如出现 USB、信任或本地 VPN 提示,请确认。

日常使用不需要 ADB。APK 安装方式取决于车机。无需手动输入 MAC 地址。

安装与连接指南 ↗
-
02

本次更新

  • 无线 CarPlay 从蓝牙切换到 Wi-Fi 时,位置上报会继续进行;Wi-Fi 和 USB 连接下的更新频率均为每秒最多一次。
  • 可选的 ADB 车轮速度和挡位上报可帮助 iPhone 在没有 GPS 时推算车辆移动;隧道效果尚未验证。
  • 可选的 iOS 27 驻车视频功能可在车辆处于 P 挡时于车机屏幕播放受支持的视频,离开 P 挡后播放器会关闭;可通过 iPhone、触屏或方向盘控制。
  • DiPlay 不是获得 FairPlay 授权的接收器,因此不支持 Apple TV+ 等受 DRM 保护的视频。
  • 界面支持英语、简体中文、阿拉伯语、俄语和西班牙语,并与 Android 应用语言设置同步。
  • 在支持的比亚迪固件上,可使用方向盘媒体按键,并在 CarPlay 显示时长按语音键唤起 Siri。
  • 仪表盘可显示地图、转向卡片或两者;修复仪表盘关键帧恢复。
  • 支持的 DiLink 5.0 可选 ADB 功能:仪表盘显示模式隐藏地图时暂停地图传输。
  • 可选通过 ADB 向 Apple 地图报告电池数据,支持低电量阈值、充电接口选择和检查后重新连接。
  • 修复音频播放稳定性问题,优化仪表盘设置用语。
发布说明与校验值 ↗

试用前请了解

这是公开预览版,未经 Apple 认证。认证使用从公开固件中提取的实验性配件身份,无法保证未来持续可用。部分车机仍可能出现卡顿或图标大小调整不生效。建议先使用 30 fps 并关闭 HEVC,必要时降低分辨率。

-

获取更新

在 Telegram 上关注项目消息和新版本。

关注 Telegram ↗
-

更新与签名

覆盖安装到之前的公开版本即可保留设置,公开版签名密钥不变。测试版使用独立的应用包名。

- -
\ No newline at end of file