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

241
Views
Acceso directo estático de la aplicación de Android con la biblioteca de navegación

Mi aplicación tiene un acceso directo estático y estoy usando el componente de arquitectura de navegación.

Estoy usando la siguiente implementación pero no funciona en Android 9.

En mi actividad principal:

 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) setupToolbar() setupNavigationDrawer() checkPermissions() if (intent.action == MoneyBook.SHORTCUT_ACTION_ADD_BOOKENTRY) { findNavController(R.id.nav_host_fragment).popBackStack(R.id.action_entriesFragment_to_newBookEntryFragment, false) } }

atajos.xml:

 <shortcuts xmlns:android="http://schemas.android.com/apk/res/android"> <shortcut android:enabled="true" android:icon="@drawable/ic_shortcut_addbookentry" android:shortcutId="shortcut_addbookentry" android:shortcutLongLabel="@string/shortcut_addbookentry_label_short" android:shortcutShortLabel="@string/shortcut_addbookentry_label_short"> <intent android:action="at.guger.moneybook.action.ADD_BOOKENTRY" android:targetClass="at.guger.moneybook.activity.MainActivity" android:targetPackage="at.guger.moneybook.dev" /> </shortcut> </shortcuts>

Al depurar la aplicación, noté que se llama al método findNavController(...) , pero no sucede nada en la pantalla.

Además, no onStart(...) o onResume(...) .

¿Hay alguna forma de implementar accesos directos de aplicaciones con el componente de navegación o estoy haciendo algo terriblemente mal aquí?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

La navegación no admite enlaces profundos solo por intent.action . Sin embargo, puede agregar un elemento android:data a su elemento <intent> y luego agregar un enlace profundo implícito a su gráfico de navegación. Al hacer esto, no tendrá que escribir ningún código específico para manejar el Intent.

Por ejemplo, cambie su shortcuts.xml para agregar el atributo android:data :

 <intent android:action="at.guger.moneybook.action.ADD_BOOKENTRY" android:targetClass="at.guger.moneybook.activity.MainActivity" android:targetPackage="at.guger.moneybook.dev" android:data="moneybook://add_book_entry" />

y en su archivo XML de gráficos de navegación, agregue un elemento <deepLink> para la misma URL:

 <fragment android:id="@+id/add_book_entry_fragment" android:name=".AddBookEntryFragment"> <deepLink app:uri="moneybook://add_book_entry" /> </fragment>
over 4 years ago · Santiago Trujillo Report
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!