इस पेज पर, यह बताया गया है कि ड्राइविंग सेशन के बीच हॉटस्पॉट को चालू रखने के लिए, उपयोगकर्ताओं को कैसे सेट अप किया जा सकता है. यह सुविधा, AAOS में वाई-फ़ाई की मदद से ड्राइविंग करने के अनुभव की तरह ही काम करती है.
public class CarSettings {
...
@SystemApi
public static final class Global {
...
/**
* Enables persistent tethering when set to {@code "true"}.
*
* <p>When enabled, tethering is started when the car is started given
* that the hotspot was enabled at shutdown and all tethering sessions
* will remain on even if no devices are connected to it.
*
* <p>When disabled, hotspot will turn off automatically if no devices
* are connected and will no longer persist through drives.
*
* @hide
*/
@SystemApi
public static final String ENABLE_PERSISTENT_TETHERING =
"android.car.ENABLE_PERSISTENT_TETHERING";
}
}
इंटरनेट शेयर करने की सुविधा को चालू रखने के लिए, ENABLE_PERSISTENT_TETHERING का इस्तेमाल
Settings API के ज़रिए करें,
जिसका इस्तेमाल क्वेरी करने के लिए भी किया जा सकता है.
अनुमतियां
CarWifiManager API का इस्तेमाल करने पर पाबंदी है. यह नई अनुमति, ऐक्सेस को सुरक्षित रखने के लिए बनाई गई है.
public boolean canControlPersistApSettings() { ... }
इस अनुमति के लिए सुरक्षा के ये लेवल हैं:
| नई अनुमति | अनुमति | सुरक्षा का लेवल |
|---|---|---|
| हां | READ_PERSIST_TETHERING_SETTINGS |
हस्ताक्षर | खास अधिकार वाली |
इंटरनेट शेयर करने की सुविधा को चालू रखने का डिफ़ॉल्ट व्यवहार, समर्थित नहीं है पर सेट होता है. इंटरनेट शेयर करने की सुविधा को चालू रखने की क्षमता को ब्लॉक करने के लिए, संसाधन ओवरले
(config_enablePersistTetheringCapabilities) कॉन्फ़िगर किया जाता है. इंटरनेट शेयर करने की सुविधा को चालू रखने के लिए, वैल्यू को true पर सेट करें. इससे, उपयोगकर्ता की पसंद के ऑप्ट-इन के अलावा, इस सुविधा को चालू किया जा सकेगा. ऐसा इसलिए, क्योंकि WRITE_SECURE_SETTINGS अनुमति वाले अन्य सिस्टम ऐप्लिकेशन भी इस सेटिंग को कंट्रोल कर सकते हैं.
यहां दिया गया एपीआई यह तय करता है कि यह सुविधा चालू है या नहीं. ENABLE_PERSISTENT_TETHERING में बदलाव करने से पहले, इस एपीआई को कॉल करें.
/**
* CarWifiManager provides API to allow for applications to perform Wi-Fi specific
* operations.
*
* @hide
*/
@SystemApi
public final class CarWifiManager extends CarManagerBase {
/**
* Returns {@code true} if the persist tethering settings are able to be
* changed.
*
* @hide
*/
@SystemApi
@RequiresPermission(Car.PERMISSION_READ_PERSIST_TETHERING_SETTINGS)
public boolean canControlPersistApSettings() { ... }
}