Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

166
Views
¿Cómo iniciar la página de configuración "Usuarios y cuentas"?

Me gustaría mostrar la configuración de sincronización para una cuenta de AccountManager / SyncAdapter , e incluso la cuenta es creada por la aplicación que intenta mostrarla (las autoridades de contenido también coincidirían). Pero, ¿cómo iniciar indirectamente UserAndAccountDashboardActivity con un Intent ? La página de configuración que equivale a Settings.EXTRA_AUTHORITIES (correo electrónico) incluso parece ser un nivel más profundo.

Esta Intent funciona en el sistema operativo Android, pero en el sistema operativo Harmony me muestra WifiSettingsActivity .

 protected void showSyncSettings(@NonNull String authority) { Intent intent = new Intent(); intent.setAction(Settings.ACTION_SYNC_SETTINGS); intent.putExtra(Settings.EXTRA_AUTHORITIES, new String[] {authority}); try { this.startActivity(intent); } catch (ActivityNotFoundException e) { Log.e(LOG_TAG, e.getMessage()); } }

Este problema es ACTION_SYNC_SETTINGS , y UserAndAccountDashboardActivity es casi lo mismo:

En algunos casos, es posible que no exista una Actividad coincidente, así que asegúrese de protegerse contra esto.

 E/ActivityTaskManager: START {act=android.settings.SYNC_SETTINGS flg=0x10000000 hwFlg=0x10 cmp=com.android.settings/.HWSettings} result: 3

Lo que he intentado hasta ahora es iniciar UserAndAccountDashboardActivity directamente:

 Intent intent = new Intent(); intent.setClassName("com.android.settings", "com.android.settings.Settings$UserAndAccountDashboardActivity"); startActivity(intent);

Lo que sugiere que no se puede iniciar UserAndAccountDashboardActivity directamente:

W/ActivityTaskManager: Denegación de permiso: Intent { cmp=com.android.settings/.Settings$UserAndAccountDashboardActivity (has extras) } de ProcessRecord{e07293d 8294:com.acme.debug/u0a208} (pid=8294, uid=10208) no exportado desde uid 1000.

Al iniciarlo con adb shell am , tampoco hace mucho:

 HWWGR:/ $ am start -n com.android.settings/com.android.settings.Settings -e :android:show_fragment com.android.settings.Settings$UserAndAccountDashboardActivity Starting: Intent { cmp=com.android.settings/.Settings (has extras) }

Esta parece ser la página de configuración principal, desde donde el usuario todavía tiene que desplazarse hacia abajo 2-3 pantallas:

 intent.setClassName("com.android.settings", "com.android.settings.HWSettings");

Y puedo iniciar la mayoría de las otras subpáginas de Settings / extends HWSettings directamente:

BluetoothSettingsActivity • WirelessSettingsActivity • TetherSettingsActivity • VpnSettingsActivity • DateTimeSettingsActivity • WifiSettingsActivity • LocalePickerActivity • UserDictionarySettingsActivity • SoundSettingsActivity • DisplaySettingsActivity • DeviceInfoSettingsActivity • ManageApplicationsActivity • StorageUseActivity • DevelopmentSettingsActivity • AccessibilitySettingsActivity • CaptioningSettingsActivity • LocationSettingsActivity • RunningServicesActivity • PowerUsageSummaryActivity • CryptKeeperSettingsActivity • DeviceAdminSettingsActivity • DataUsageSummaryActivity • AdvancedWifiSettingsActivity • TextToSpeechSettingsActivity • WifiDisplaySettingsActivity • DreamSettingsActivity • UserSettingsActivity • NotificationAccessSettingsActivity • TrustedCredentialsSettingsActivity • PrintSettingsActivity

Incluso hay más subpáginas, que se pueden iniciar directamente:

 HWWGR:/ $ dumpsys package | grep -Eo "^[[:space:]]+[0-9a-f]+[[:space:]]+com.android.settings/[^[:space:]]+" | grep -oE "[^[:space:]]+$" | grep Settings\\$

Esto también proporciona algunas subclases específicas del proveedor, p. la actividad del panel de StorageDashboardActivity .


Pero, ¿cómo tendría que parecerse el Intent , que abre la UserAndAccountDashboardActivity deseada directa o indirectamente? También probé Intent com.android.settings/.SubSettings , pero tampoco se puede iniciar:

 HWWGR:/ $ am start -n com.android.settings/com.android.settings.SubSettings Starting: Intent { cmp=com.android.settings/.SubSettings } Security exception: Permission Denial: starting Intent { flg=0x10000000 cmp=com.android.settings/.SubSettings } from null (pid=28606, uid=2000) not exported from uid 1000
over 4 years ago · Santiago Trujillo
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!