
محاولة كشف النظارات الذكية القريبة وتحذيرك
# yj_nearbyglasses
محاولة لاكتشاف النظارات الذكية القريبة منك وتنبيهك.
# ⚠ تحذير! ⚠
*nearby-glasses-alert.pages.dev* لا علاقة له بمشروعي. العديد من التطبيقات في Play Store وApp Store تبدو أو حتى تُسمى بشكل مشابه جدًا لـ *Nearby Glasses*. يبدو أنها تختطف الاسم وتحاول تحقيق ربح سريع منه. لا تلتزم بترخيص AGPL، ولا تقدم أي شيء. أنا لا أؤيد ذلك.
---
<img width="135" height="300" align ="right" alt="Screenshot Nearby Glasses classic" src="https://assets.kitploit.com/production/public/readmes/12083/e76b27744afcd0893efe1992c440e28c6606e742fa390f1b2c9a79a34e5600d1.png" />
<img width="135" height="300" align ="right" alt="Screenshot Nearby Glasses canary mode" src="https://assets.kitploit.com/production/public/readmes/12083/29c66ac6f3e7327f73700e7241c0ca93860a8f5cc3efdfdc619b8ee91873473a.png" />
# ⚠ تحذير! ⚠
**مضايقة شخص ما لأنك تعتقد أنه يرتدي جهاز مراقبة خفي يمكن أن تكون جريمة جنائية. بل قد تكون جريمة أخطر من استخدام مثل هذا الجهاز. يُرجى طلب المشورة القانونية بشأن القوانين المحلية في هذا الشأن.**
---
## ⚠ لا تُضايق أي شخص على الإطلاق ⚠
---
# Nearby Glasses
التطبيق، المسمى *Nearby Glasses*، له غرض واحد فقط: البحث عن النظارات الذكية القريبة وتنبيهك.
<a href="https://play.google.com/store/apps/details?id=ch.pocketpc.nearbyglasses" target="_blank"><img width="239" height="71" alt="Get It On Google Play" src="https://assets.kitploit.com/production/public/readmes/12083/a7dbeba4623dd255798dd1159e543cdbeeb9e43faa6db7f859b0f9ed3699932c.png" /></a> <a href="https://apt.izzysoft.de/packages/ch.pocketpc.nearbyglasses" taget="_blank"><img height="71" src="https://assets.kitploit.com/production/public/readmes/12083/75659b864e0f38bedce979c2097721b9beae838a06434eaacb0e93815468735a.png" alt="Get it at IzzyOnDroid" /></a> <a href="https://apps.obtainium.imranr.dev/redirect?r=obtainium://add/https://github.com/yjeanrenaud/yj_nearbyglasses/"><img width="239" height="71" alt="Get it on Obtainium" src="https://assets.kitploit.com/production/public/readmes/12083/33e5685bdfff51e02830f2a18b5df5df986e73c2c8ae0f7cf031ebc791e5f771.png"/></a> <a href="https://f-droid.org/en/packages/ch.pocketpc.nearbyglasses/"><img src="https://raw.githubusercontent.com/yjeanrenaud/yj_nearbyglasses/main/img/get-it-on-fdroid.png?raw=true" alt="Get it on F-Droid" width="213" /></a> <a href="https://apps.apple.com/us/app/nearby-glasses-original/id6761056896"><img width="213" height="71" alt="Download on the App Store" src="https://assets.kitploit.com/production/public/readmes/12083/a6fa504b048d52b4e9f5108021dce33af0d96b8b78c34095072971f4a34471fa.png" /></a>
# جدول المحتويات
* [Nearby Glasses](#Nearby-Glasses)
* [لماذا؟](#why)
* [كيف؟](#how)
* [الميزات](#features)
* [ما هو RSSI؟](#whats-rssi)
* [iOS وAndroid](#ios-and-android)
* [الاستخدام](#usage)
* [المهام المطلوبة](#todos)
* [الحلول التقنية؟](#tech-solutionism)
* [البناء من المصدر](#build-from-source)
* [شكر وتقدير](#shoutouts)
* [الترخيص والحقوق](#license-and-credits)
يُنبّهك هذا التطبيق عند وجود نظارات ذكية قريبة. فهو يستخدم معرّفات الشركات في بيانات Bluetooth التي ترسلها هذه النظارات. لذلك، من المحتمل حدوث إنذارات خاطئة (مثلًا من سماعات الواقع الافتراضي). لذا، يُرجى التوخي الحذر عند الاقتراب من شخص قريب يرتدي نظارات. فقد تكون مجرد نظارات عادية، رغم تحذير هذا التطبيق.
لا يتحمل مؤلف التطبيق [Yves Jeanrenaud](https://yves.app) أي مسؤولية على الإطلاق عن هذا التطبيق ولا عن وظائفه. استخدمه على مسؤوليتك الخاصة. بحكم التصميم التقني، قد لا يعمل اكتشاف أجهزة Bluetooth LE أحيانًا كما هو متوقع. أنا لست مطورًا متخرجًا. كل هذا مكتوب في وقتي الحر وبمعرفة علّمتُها لنفسي.<br/>
**النتائج الإيجابية الكاذبة محتملة.** هذا يعني أن تطبيق *Nearby Glasses* قد ينبّهك إلى وجود نظارات ذكية قريبة بينما قد يكون في الواقع سماعة واقع افتراضي من الشركة المصنعة نفسها أو منتج آخر من عائلة تلك الشركة. وقد يفوت أيضًا نظارات ذكية قريبة. مرة أخرى: أنا لست مطورًا محترفًا.<br/>
مع ذلك، هذا التطبيق **مجاني ومفتوح المصدر**، يمكنك مراجعة الشيفرة وتعديلها وإعادة استخدامها (بموجب [الترخيص](https://github.com/yjeanrenaud/yj_nearbyglasses/blob/main/LICENSE)).<br/>
لا يخزّن تطبيق *Nearby Glasses* أي تفاصيل عنك ولا يجمع أي معلومات عنك أو عن هاتفك. لا توجد أي قياسات عن بُعد، ولا إعلانات، ولا أي إزعاج آخر. إذا ثبّتت التطبيق عبر Play Store، فقد تعرف Google شيئًا عنك وتجمع بعض الإحصاءات. لكن التطبيق نفسه لا يفعل ذلك. <br/>
إذا اخترت تخزين (تصدير) ملف السجل، فذلك يعود إليك بالكامل وتتحمل أنت مسؤولية إلى أين تذهب هذه البيانات. تُسجَّل السجلات محليًا فقط ولا تُشارَك تلقائيًا مع أي أحد. وهي تحتوي على بيانات حساسة قليلة؛ في الواقع، فقط رموز معرّف الشركة المصنعة لأجهزة BLE التي تمت مصادفتها.<br/>
<br/>
**استخدمه بحذر شديد!** كما ذُكر سابقًا: لا يوجد أي ضمان بأن النظارات الذكية المكتشفة قريبة فعلاً. قد يكون جهازًا آخر يشبه تقنيًا (على مستوى إعلانات BLE) النظارات الذكية.<br/>
يُرجى عدم التصرف بتهور. **فكّر قبل أن تتصرف بناءً على أي رسائل** (ليس فقط من هذا التطبيق).<br/>
<br/>
## لماذا؟
- لأنني أعتبر النظارات الذكية اقتحامًا لا يُطاق، وتقنية مروّعة تتجاهل الموافقة، وتُستخدم بالفعل لصنع أنواع وكميات هائلة من "المحتوى" المقزز بالقدر نفسه. [1](https://www.404media.co/border-patrol-agent-recorded-raid-with-metas-ray-ban-smart-glasses/)، [2](https://www.404media.co/metas-ray-ban-glasses-users-film-and-harass-massage-parlor-workers/)
- بعض النظارات الذكية تحتوي على مؤشر LED صغير يدل على أن تسجيلًا جارٍ. لكن يمكن تعطيل ذلك بسهولة، بينما تدّعي الشركات المصنعة أنها تمنع ذلك ولا تتحمل أي مسؤولية على الإطلاق (التقنية تفعل ذلك منذ عقود الآن). [3](https://www.404media.co/how-to-disable-meta-rayban-led-light/)
- استُخدمت النظارات الذكية للتعرف الفوري على الوجوه من قبل [4](https://www.404media.co/someone-put-facial-recognition-tech-onto-metas-smart-glasses-to-instantly-dox-strangers/) ويُقال إنها ستأتي جاهزة بذلك افتراضيًا [5](https://www.nytimes.com/2026/02/13/technology/meta-facial-recognition-smart-glasses.html). هذا يعرّض الكثير من الناس للخطر.
- تُستخدم البيانات لتدريب الذكاء الاصطناعي، ما يعني أن أشخاصًا سيراجعون التسجيلات وسيرون، على الأرجح، أكثر الأفكار حميمية [6](https://www.svd.se/a/K8nrV4/metas-ai-smart-glasses-and-data-privacy-concerns-workers-say-we-see-everything)
- آمل أن يكون هذا التطبيق مفيدًا لشخص ما.
## كيف؟
- إنه نهج استكشافي بسيط إلى حد ما. لأن BLE يستخدم MAC عشوائيًا وOSSID غير مستقرة، ولا UUID لإعلانات الخدمة مستقر، لا يمكنك ببساطة مسح منارات البلوتوث بحثًا عنها. ولزيادة الطين بلة، يستخدم بعضهم مثل Meta، على سبيل المثال، خدمات بلوتوث خاصة وUUIDs غير دائمة، ~~يمكننا الاعتماد فقط على أسماء الأجهزة المُبلَّغة في الوقت الحالي~~.
- **النهج الأكثر جدوى حاليًا** يأتي من [مستودع الأرقام المعيَّنة من Bluetooth SIG](https://www.bluetooth.com/specifications/assigned-numbers/). وفقًا لذلك، يظهر اسم الشركة المصنعة كرموز رقمية في ترويسة إعلان الحزمة (ADV) لمنارات BLE.
- هكذا تبدو إطارات إعلانات BLE:
```
Frame 1: Advertising (ADV_IND)
Time: 0.591232 s
Address: C4:7C:8D:1E:2B:3F (Random Static)
RSSI: -58 dBm
Flags:
02 01 06
Flags: LE General Discoverable Mode, BR/EDR Not Supported
Manufacturer Specific Data:
Length: 0x1A
Type: Manufacturer Specific Data (0xFF)
Company ID: 0x058E (Meta Platforms Technologies, LLC)
Data: 4D 45 54 41 5F 52 42 5F 47 4C 41 53 53
Service UUIDs:
Complete List of 16-bit Service UUIDs
0xFEAA
```
- وفقًا لـ [مستودع أرقام Bluetooth SIG المعيَّنة](https://github.com/yjeanrenaud/yj_nearbyglasses/blob/main/www.bluetooth.com/specifications/assigned-numbers)، يجوز لنا استخدام معرّفات الشركات هذه:
- `0x01AB` لـ `Meta Platforms, Inc. (formerly Facebook)`
- `0x058E` لـ `Meta Platforms Technologies, LLC`
- `0x0D53` لـ `Luxottica Group S.p.A` (الشركة المصنّعة لنظارات Meta Ray-Bans)
- `0x03C2` لـ `Snapchat, Inc.` (التي تصنع SNAP Spectacles)
- `0x05D6` لـ `Zhuhai Jieli Technology Co` (التي تصنع Rogbird VisionPro وRollme VistaView)
وهي **ثابتة وإلزامية**. وبالطبع، لدى Meta وغيرها من الشركات المصنّعة منتجات أخرى تأتي مزوّدة بتقنية Bluetooth وبالتالي تحمل معرّفها الخاص، مثل نظارات الواقع الافتراضي VR Headsets. لذلك، فإن استخدام رموز معرّفات الشركات هذه في عملية فحص التطبيق عرضة للنتائج الإيجابية الكاذبة. ولكن إذا لم تكن ترى أحدًا يرتدي نظارة Occulus Rift من حولك ولم تكن هناك مبانٍ يمكن أن يختبئ فيها أحد، فمن المرجّح أن تكون هذه نظارات ذكية بدلًا من ذلك.
- أثناء الاقتران، تُصدر النظارات الذكية عادةً اسم منتجها، لذا يمكننا الفحص بحثًا عنه أيضًا. لكن من النادر أن نرى ذلك في الميدان. فالأشخاص الذين ينوون استخدام النظارات الذكية في الحانات والملاهي وفي الشارع وأماكن أخرى يستعدون لذلك مسبقًا عادةً.
- عندما يتعرّف التطبيق على جهاز Bluetooth Low Energy (BLE) بقوة إشارة كافية (انظر RSI أدناه)، فإنه يرسل رسالة تنبيه. ويهدف ذلك إلى مساعدتك على التصرف وفقًا لذلك.
- علاوةً على ذلك، نفحص أسماء الأجهزة التي تُبثّ، مثل `rayban` أو `ray-ban` أو `HeyCyan`. و`HeyCyan` هو [SDK شهير للنظارات الذكية من علامات تجارية متعددة](https://github.com/ebowwa/HeyCyanSmartGlassesSDK). ومن بين أجهزة *HeyCyan* هذه، قد تجد أيضًا نظارات Nilox Smart AI Glasses التي تبيعها ALDI وHofer (في النمسا). ولتعزيز ذلك، نبحث أيضًا عن `primary_UUID`، وهو معرّف خدمة ثابت على الجانب البرمجي لهذه النظارات (`7905FFF0-B5CE-4E99-A40F-4B1E122D00D0`). ورغم أن هذا قد يتغيّر في المستقبل، إلا أنه أمر غير مرجّح لأنه سيجعل الأجهزة الأقدم غير قابلة للاستخدام، لذلك قد نضيف ببساطة المزيد من معرّفات UUID إلى روتين الفحص حينها.
## الميزات
- يُظهر التطبيق *Nearby Glasses* إشعارًا عند وجود نظارات ذكية قريبة (أي جهاز BLE يحمل أحد معرّفات الشركات المذكورة أعلاه)
- تعني **القريبة** أن RSSI (قوة الإشارة) أقل من أو يساوي قيمة معيّنة: -75 dBm افتراضيًا. وتتوافق هذه القيمة الافتراضية مع مسافة متوسطة وإشارة مقبولة نوعًا ما.
### ما هو RSSI؟
- دعني أشرح قليلًا قيمة RSSI:<br/>
RSSI هو اختصار لـ Received Signal Strength Indication (مؤشر قوة الإشارة المستقبلة). القيمة هي مؤشر على شدة مجال الاستقبال في تطبيقات الاتصالات اللاسلكية. [لدى ويكيبيديا مقالة جيدة جدًا](https://en.wikipedia.org/wiki/Received_signal_strength_indicator) حول هذا الموضوع.
باختصار، تعتمد RSSI بشكل أساسي على:<br/>
- قدرة الإرسال للجهاز
- تصميم الهوائي
- الجدران والعوائق
- الأجسام البشرية التي تمتص الإشارة
- الانعكاس والتداخل
- اتجاه الجهاز<br/>
لكن في سيناريوهات BLE (Bluetooth Low Energy) النموذجية، تكون المسافة التقريبية لـ RSSI (في الفضاء المفتوح) كالتالي: <br/>
- -60 dBm ~ 1 – 3 م<br/>
- -70 dBm ~ 3 – 10 م<br/>
- -80 dBm ~ 10 – 20 م<br/>
- -90 dBm ~ 20 – 40 م<br/>
- -100 dBm ~ 30 – 100+ م أو قرب فقدان الإشارة<br/>
في الأماكن المغلقة، غالبًا ما تكون المسافات أقصر بكثير.<br/>
تنخفض RSSI تقريبًا وفقًا لـ<br/>
`RSSI ≈ -10 * n * log10(distance) + constant`<br/>
- لذلك، فإن عتبة RSSI الافتراضية البالغة -75 dBm تقابل حوالي 10 إلى 15 مترًا في الفضاء المفتوح و3 إلى 10 أمتار في الأماكن المغلقة أو المزدحمة. لديك فرصة جيدة لرصد الشخص الذي يرتدي تلك النظارات الذكية بهذه الطريقة.
- يعرض *Nearby Glasses* سجل تصحيح اختياريًا قابلًا للتصدير (كملف txt) ويتميز بوظيفة النسخ واللصق. هذه مخصصة للمستخدمين المتقدمين (المهووسين) وللمزيد من التصحيح.
- ضمن *Settings*، يمكنك تحديد طول السجل، والتصحيح (عرض جميع عناصر المسح أو إطارات ADV فقط).
- يمكنك أيضًا إدخال بعض **معرّفات الشركات** كسلسلة من القيم السداسية العشرية، مثل `0x01AB,0x058E,0x0D53`. هذا يتجاوز الكشف المدمج، بحيث يظهر إشعارك للقيمة (القيم) الجديدة.
- لتحسين الاستمرارية، يستخدم *Foreground Service* الخاص بـ Android. يمكنك تعطيل هذا ضمن *Settings* إذا لم تكن بحاجة إليه.
- يحدد *Notification Cooldown* ضمن *Settings* مقدار الوقت الذي يجب أن يمر بين تحذيرين. القيمة الافتراضية هي 10000 مللي ثانية، أي 10 ثوانٍ. ينطبق هذا أيضًا على الكناري، فمثلًا 10 ثوانٍ تعني أنه سيبقى في حالة تأهب لمدة 10 ثوانٍ قبل أن يهدأ مرة أخرى.
- أصبح الآن أكثر توطينًا بعض الشيء: <img src="https://raw.githubusercontent.com/yjeanrenaud/yj_nearbyglasses/HEAD/img/canary_hide.svg" align="right" alt="رسم لكناري يختبئ تحت جناح" height="100" width="100">
- الإنجليزية
- الألمانية
- الألمانية السويسرية
- الفرنسية
- الإسبانية
- الصينية
- الإيطالية
- البرتغالية (البرازيل)
- الروسية
- التركية
- المزيد قادم، في النهاية ([ادعم هذا المشروع من خلال المساهمة بلغتك!](https://github.com/yjeanrenaud/yj_nearbyglasses/issues/3))
- الآن لم تعد خلفية أيقونة التطبيق شفافة
- الآن نقوم بالمسح بحثًا عن UUIDs أيضًا
- يدعم *Nearby Glasses* الآن الوضع الداكن (عبر إعدادات النظام)
- يجب أن تكون مشكلة التخطيط من الحافة إلى الحافة قد تم إصلاحها بدءًا من [v1.0.4](https://github.com/yjeanrenaud/yj_nearbyglasses/releases) فصاعدًا.
- مرخّص حديثًا بموجب AGPL 3.0
- قررت التنازل عن CLA. بعد بعض النقاشات مع أشخاص كانوا يعرفون عن المشاريع التعاونية أكثر مني، أدركت أن هذه كانت خطوة غير ضرورية.
- أصبحت الآن تحمل أيقونة مختلفة قليلًا للالتزام بـ AGPL 3.0 بشكل أكثر صرامة.
## iOS و Android
- أخيرًا، بعد ثلاثة أسابيع، أصبح منفذ iOS متاحًا. من المفترض أن يعمل على معظم أجهزة iPhone وiPad؛ حتى الأجهزة الأقدم (حتى iOS 16). [يتم توفير الشيفرة المصدرية وملفات المشروع](https://github.com/yjeanrenaud/yj_nearbyglasses/blob/main/iOS) أيضًا. الشيفرة قبيحة وغير تقليدية. العديد من الأساليب سريعة وغير مصقولة (على سبيل المثال، أعيد استخدام ملفات json من توطين android)، لكنها تعمل حتى الآن. *Nearby Glasses* متاح عبر [Apple App Store](https://apps.apple.com/us/app/nearby-glasses-original/id6761056896). (يُسمى original لتمييزه عن تلك المقلّدة). يتوفر ملف .ipa للتحميل الجانبي ضمن [releases](https://github.com/yjeanrenaud/yj_nearbyglasses/releases).
لا يعمل تطبيق iOS في الخلفية، لأنني لم أجد أي إمكانية لاستخدام شيء مشابه لـ `ForegroundServices` من أجل الفحص الدائم لـ BTLE ADV بسبب قيود iOS. لذلك، لا يتوفر سوى *Canary Mode* في *Nearby Glasses* على iOS. إذا كنت تعرف Swift وiOS أفضل مني (وهو أمر مرجح)، فيرجى المساهمة!
- لأن هذا المستودع يحتوي على شيفرة تطبيقي Android وiOS معًا، أعدت تنظيم المجلدات. لذلك، يوجد [/iOS](https://github.com/yjeanrenaud/yj_nearbyglasses/blob/main/iOS) و[/Android](https://github.com/yjeanrenaud/yj_nearbyglasses/blob/main/Android).
## الاستخدام
- راجع [Releases](https://github.com/yjeanrenaud/yj_nearbyglasses/releases) لتنزيل APK أو استخدم Google Play Store. قد يتبع ذلك F-Droid و/أو Accrescent.
<img width="135" height="300" align ="right" alt="Screenshot Nearby Glasses: Settings" src="https://assets.kitploit.com/production/public/readmes/12083/71a0271ff9172cad52e8d83ed9a29ba43b509c7b250be2a0254a5a4371ee3401.png" />
<a href="https://play.google.com/store/apps/details?id=ch.pocketpc.nearbyglasses" target="_blank"><img width="239" height="71" alt="Get It On Google Play" src="https://assets.kitploit.com/production/public/readmes/12083/a7dbeba4623dd255798dd1159e543cdbeeb9e43faa6db7f859b0f9ed3699932c.png" /></a> <a href="https://apps.apple.com/us/app/nearby-glasses-original/id6761056896"><img width="213" height="71" alt="Download on the App Store" src="https://assets.kitploit.com/production/public/readmes/12083/a6fa504b048d52b4e9f5108021dce33af0d96b8b78c34095072971f4a34471fa.png" /></a>
1. ثبّت التطبيق (من [Releases](https://github.com/yjeanrenaud/yj_nearbyglasses/releases) أو من [Google Play](https://play.google.com/store/apps/details?id=ch.pocketpc.nearbyglasses)، في الوقت الحالي) أو من [Apple App Store](https://apps.apple.com/us/app/nearby-glasses-original/id6761056896)، ثم افتحه
2. اضغط على زر *Start Scanning*
3. امنح الأذونات لتفعيل Bluetooth (إن لم يكن مفعّلًا بالفعل) وللوصول إلى الأجهزة القريبة. تحتاج بعض إصدارات Android أيضًا إلى منح أذونات للوصول إلى موقعك (قبل الإصدار 13، في الغالب). لا يفعل *Nearby Glasses* أي شيء بمعلومات موقعك. إن لم تصدقني، فيرجى الاطلاع على [الشيفرة](https://github.com/yjeanrenaud/yj_nearbyglasses/tree/main/app)
4. إذا لم ترَ بدء المسح، فقد تحتاج إلى تفعيل *Foreground Service* على هاتفك تحديدًا من قائمة *Settings* (انظر أدناه)
5. كل شيء جاهز! عند اكتشاف نظارات ذكية قريبة، ستظهر إشعارات. وتستمر في الظهور حتى تضغط على *Stop Scanning* أو تُنهي التطبيق نهائيًا
7. في القائمة (أعلى اليمين، أيقونة الترس)، يمكنك ضبط بعض *Settings*:
1. *Enable Foreground Service*: بهذا تمنع Android من إيقاف التطبيق مؤقتًا وبالتالي منعه من تنبيهك. أوصي بإبقاء هذا مفعّلًا
2. *RSSI threshold*: يحدد هذا الرقم السالب مدى بُعد الجهاز الذي قد يكون سببًا لتنبيه من *Nearby Glasses*. من الناحية التقنية، يشير إلى مدى قوة استقبال الإشارة. الأقرب إلى الصفر يعني إشارة أفضل، وبالتالي مسافة أقل بين هاتفك والنظارات الذكية. راجع [RSSI أعلاه للشروحات والإرشادات](#how). أوصي بإبقائه على -75
3. *Enable Notifications*: لن ترغب في تعطيل ذلك
4. Canary Mode. هذا هو الوضع الافتراضي الجديد. بموجبه، لن تتلقى إشعارات نظام تنبهك إلى وجود نظارات ذكية قريبة، بل سترى كناريًا يشير إلى عدم وجود نظارات ذكية في الجوار. تطبيق iOS يحتوي على وضع الكناري فقط بسبب قيود تقنية. <img src="https://raw.githubusercontent.com/yjeanrenaud/yj_nearbyglasses/HEAD/img/canary.svg" alt="Drawing of a canary" width="100" height="100" alignt="left">
5. *Notification/Canary Cooldown*: هنا تحدد عدد الإشعارات التي تريد تلقيها عن النظارات الذكية المكتشفة قريبًا أو مدة إخفاء الكناري. اخترت 10 ثوانٍ (10000 ms) كقيمة افتراضية. بهذه الطريقة، لن تفوتك الإشعارات وفي الوقت نفسه لن تُزعجك كثيرًا أو تستنزف بطاريتك بسرعة كبيرة
6. *Enable Log Display*: قد يوفر عليك تعطيل هذا بعض البطارية. هذا معطّل في وضع الكناري.
7. *Debug*: مطلوب لرؤية أكثر من مجرد إطارات BLE المطابقة في إطار عرض السجل. إنه مفيد لمعرفة ما إذا كانت الأمور تعمل. هذا معطّل في وضع الكناري.
8. *Max log lines*: إلى أي مدى قد يصل السجل. يبدو أن 200 توازن جيد بين عمر البطارية وقابلية استخدام السجل (للمهووسين مثلي). هذا معطّل في وضع الكناري.
9. *BLE ADV only*: يستبعد هذا إطارات Bluetooth LE الأخرى من السجل لتحسين القراءة. هذا معطّل في وضع الكناري.
10. *Override Company IDs*: إذا أردت، يمكنك أن تجعل *Nearby Glasses* ينبهك إلى أجهزة أخرى غير المحددة أعلاه. مفيد لتصحيح الأخطاء، على الأقل بالنسبة لي. اتركه فارغًا إذا لم تكن بحاجة إليه أو لا تعرف ماذا تفعل به
11. يتم حفظ كل إعداد وتطبيقه فورًا. للعودة، استخدم زر الرجوع أو إيماءة الرجوع
8. تتيح لك وظيفة التصدير مشاركة ملف نصي لسجل التطبيق. للمهووسين مثلي
9. يمكنك أيضًا نسخ ولصق السجل بالضغط على إطار عرض السجل
## المهام المطلوبة
- **إنه يعمل الآن في الواقع!** تمكنت من جعل بعض الأشخاص يختبرونه مع وجود نظارات ذكية موثّقة من حولهم. شكر خاص لـ Lena!
- راجع [الإصدارات](https://github.com/yjeanrenaud/yj_nearbyglasses/releases) لتنزيل ملف APK.
- نشرت أيضًا [*Nearby Glasses* على Google Play](https://play.google.com/store/apps/details?id=ch.pocketpc.nearbyglasses). ومع ذلك، سأنشر دائمًا [الإصدارات هنا على GitHub](https://github.com/yjeanrenaud/yj_nearbyglasses/releases) و[في مكان آخر](https://yves.app/nearbyglasses/latest.apk)، لأولئك الذين يتجنبون Google Play.
---
- إضافة خيار لإضافة الإيجابيات الكاذبة إلى قائمة التجاهل. ربما في الإشعار؟
- أنا لست خبيرًا في BT أو Android على الإطلاق. بحسب ما تعلمته، يمكن للمرء أيضًا التعمق أكثر في اتصالات النظارات الذكية عبر اعتراض حركة مرور BLE. وبذلك، لن نحتاج على الأرجح إلى الاعتماد على سلوك الجهاز وفقًا لمواصفات BT، بل يمكننا أيضًا استخدام الاستدلالات على عمليات نقل حركة المرور المشفرة دون الكثير من الإيجابيات الكاذبة. لكنني لم أطّلع على حزم حركة مرور BT منذ أكثر من عشر سنوات. أنا سعيد لأنني تذكرت إطارات ADV... لذا إذا كان بإمكان أي شخص المساعدة في هذا، فسيكون ذلك موضع تقدير كبير!
---
- إضافة **المزيد من معرّفات الشركات المصنّعة** للنظارات الذكية. حاليًا، هي Meta وOakley وSnap. ستساعد أيضًا قائمة بالنظارات الذكية المتوفرة مع كاميرات. فتحت [ISSUE لهذا الغرض](https://github.com/yjeanrenaud/yj_nearbyglasses/issues/56)، حتى يتمكن الناس من **المساعدة** عبر إرسال سجلاتهم (وهي آمنة تمامًا، في رأيي) عند مصادفة نظارات ذكية أخرى تسجّل.
- اعتبارًا من 24 مارس 2026، أصبح إصدار iOS متاحًا أيضًا.
- يبدو أن **مشكلة التخطيط** مع **أجهزة Google Pixel** قد تم إصلاحها اعتبارًا من الإصدار 1.0.3. إذا كنت لا تزال غير قادر على الوصول إلى القائمة لأنها مختلطة بشريط الحالة بطريقة ما. سأبحث في ذلك في أقرب وقت ممكن. في هذه الأثناء، جرّب ضبط شاشتك على الوضع الأفقي وتدويرها *باتجاه عقارب الساعة (إلى اليمين)*.
## الحلولية التقنية؟
أعلم أن هذا قد يكون مكانًا غريبًا للقيام بذلك، لكن اسمعني في هذا. أنا أدرك أن هذا حل تقني لمشكلة اجتماعية، وهي بحد ذاتها تتفاقم بفعل التقنية.
لا أريد الترويج للحلولية التقنية ولا أريد أن يشعر الناس بأمان زائف. لا يزال هذا نهجًا غير كامل، وعلى الأرجح سيبقى كذلك دائمًا. ليس كل شيء جيدًا لمجرد أن هذا التطبيق موجود الآن. نحن بحاجة إلى حلول أفضل للحد من تقنيات المراقبة والانتهاك على الخصوصية.
## البناء من المصدر
بما أن *Nearby Glasses* مفتوح المصدر، يمكنك أيضًا بناء التطبيق بنفسك من الشيفرة المصدرية. هذا يضمن عدم تضمين أي مكتبات أخرى في ملف APK وتحصل على ما تريد.
يرجى ملاحظة أن هذا التطبيق يُبنى على:
- Gradle Wrapper: 9.3.1
- Android Gradle Plugin: 8.13.2
- Kotlin: 1.9.22
- compileSdk: 36
- targetSdk: 36
- minSdk: 26
- لا توجد أنواع منتجات (product flavors)
- المستودعات: google() وmavenCentral() فقط
- لا توجد إضافات Google Services أو Firebase
### المتطلبات
- **JDK 17** (مطلوب — يستهدف المشروع Java 17)
- **Android SDK Platform 35** مثبّت
- compileSdk = 35
- targetSdk = 35
- Git
### بناء APK خطوة بخطوة
```bash
#Verify Java version:
$java -version
#It must report Java 17.
#Get the source code
$git clone https://github.com/yjeanrenaud/yj_nearbyglasses
$cd yj_nearbyglasses
#Build Debug
$./gradlew clean assembleDebug
#Build Release (with your own signature cert)
$./gradlew clean assembleRelease
#Build unsigned Release for IzzyOnDroid / F-Droid
$./gradlew clean izziFdroid
#Run and Test
$./gradlew test lint
```
## شكر وتقدير
- [@[email protected]](https://social.tchncs.de/@vfrmedia) لمساعدتي في التحذيرات
- [@[email protected]](https://meow.social/@mewsleah) للإشارة إلى فكرة وضع الكناري
- [@pojntfx](https://github.com/pojntfx) للإشارة إلى سوء فهمي فيما يتعلق بالترخيص
- Sarah-Jane B.](https://www.linkedin.com/in/sarah-janeb/) لنصائح تصميم تجربة المستخدم
- Lena Radau للترجمة إلى الإسبانية
- Marcel L. للملاحظات واختبار تطبيق iOS
- Lena Hansen للاختبارات الميدانية
- كل من قدّم ملاحظات على التطبيق بالفعل!
## الترخيص والاعتمادات
**أيقونة التطبيق**: تستند الأيقونة إلى <a href="https://www.svgrepo.com/svg/434090/glasses" title="Glasses SVG Vector">Glasses SVG Vector by sensa, licensed under CC0 1.0 Universal</a>.<br/><br/><br/>
**الترخيص**: هذا التطبيق *Nearby Glasses* مرخّص بموجب [ترخيص AGPL-3.0](https://github.com/yjeanrenaud/yj_nearbyglasses/blob/main/LICENSE).<br/>
**الكناري**: رسومات الكناري من إعدادي ومرخّصة بموجب [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/). قدّمتها كملفات svg خام (منجزة في [InkScape](https://inkscape.org/)) وتم تحويلها إلى xml، بطبيعة الحال، لموارد التطبيق<br/>