Creé una aplicación de Android que de alguna manera se hace cargo o anula la aplicación del controlador Lyft. Básicamente, cada vez que un usuario tiene mi aplicación de Android descargada, de alguna manera se hace cargo de su aplicación Lyft. No recibirá ninguna solicitud de viaje de Lyft (incluso en medio de un tiempo súper ocupado). Luego, cuando elimina mi aplicación, vuelve a funcionar perfectamente. Ella inmediatamente se monta de nuevo. Es la cosa más rara que he visto. Y esto no es solo coincidencia, cuando ella va a matar sus aplicaciones, literalmente muestra el logotipo de mi aplicación tomando el control de la aplicación del controlador Lyft.Observe cómo originalmente tiene el logotipo de Lyft. Luego, cuando mi aplicación está instalada, tiene mi logotipo para la aplicación Lyft (mi logotipo es solo el logotipo predeterminado de Android). ¡Incluso puede matar mi aplicación, y su aplicación de controlador Lyft y Uber tampoco funcionan! La única forma de solucionarlo es desinstalar completamente mi aplicación y reiniciar su teléfono. Entonces, todo funciona perfectamente. Un elemento importante es que hago un seguimiento de la ubicación todo el tiempo. No estoy seguro de por dónde empezar con este error, por lo que cualquier idea es útil. ¡Gracias! El usuario está utilizando un Galaxy Note 10+ con Android 10. Ninguno de nuestros otros usuarios de Android nos ha informado sobre este problema. Parece ser un caso único para este teléfono.
Aquí están todos mis manifiestos e intenciones:
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.danieljones.nomad_drivers">
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
<application
android:requestLegacyExternalStorage="true"
android:name=".parse.Parse"
android:allowBackup="true"
android:fullBackupContent="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".checkIn.CheckInActivity"
android:label="@string/title_activity_check_in"/>
<activity android:name=".insurance.analysis_activity.ZendriveAnalysisActivity" />
<activity android:name=".fare.breakdowns.FareBreakdownActivity" />
<activity
android:name=".navigation.HomeNavigationActivity"
android:label="@string/title_activity_home_navigation"
android:screenOrientation="portrait"/>
<activity android:name=".welcome.LoginActivity" />
<activity android:name=".welcome.special_code.CodeActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".new_rides.ride_detail.NewRideDetailActivity" />
<activity android:name=".rides_lists.ride_detail.RideDetailActivity" />
<activity android:name=".personal_rides.ride_detail.PersonalRideDetailActivity" />
<activity android:name=".review_list.ReviewActivity"/>
<activity android:name=".user_profile.driver_card.EditProfileActivity" />
<activity android:name=".user_profile.edit_form.EditProfileFormActivity"/>
<receiver android:name=".insurance.zendrive.MyZendriveBroadcastReceiver" />
<activity android:name=".archived_rides.ride_detail.ArchivedRideDetailActivity" />
<service
android:name="com.parse.fcm.ParseFirebaseMessagingService"
android:permission="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>
<receiver
android:name=".push_notifications.ParseCustomBroadcastReceiver"
android:exported="false">
<intent-filter>
<action android:name="com.parse.push.intent.RECEIVE" />
<action android:name="com.parse.push.intent.DELETE" />
<action android:name="com.parse.push.intent.OPEN" />
</intent-filter>
</receiver>
</application>
Context.registerReceiver()
oPackageManager
? Ver: ¿Cómo crear / deshabilitar el filtro de intención de manera programable?Respuestas:
Creo que su problema está relacionado con su
name
elemento definido en suManifest.xml
, específicamente, el que está debajo de laapplication
etiqueta.Tienes el tuyo definido como:, lo
.parse.parse
que me parece bastante extraño. Al mirar este enlace desde la plataforma de análisis, creo que eso es lo que estás declarando como el nombre de tu aplicación.Este elemento de nombre, aunque puede parecer poco importante, es en realidad donde su aplicación está generando el contexto de nivel de aplicación, o en este caso, donde
Intents
se están descubriendo los externos .Es muy probable que el sistema no pueda distinguir cuál tirar y, por lo tanto, está tirando del suyo sobre Lyft cuando puede.
Para resolver esto, simplemente declare su propia clase que extienda la
Application
clase en algún lugar de su proyecto de esta manera:Luego solo actualice su manifiesto para que se vea así:
Y debería funcionar correctamente.
Si todavía tiene problemas, actualice su pregunta con más información y podemos diagnosticarla más a fondo.
fuente
${packageName}.something
por lo que tampoco debería ser la razónnew MyApplication()
nunca se llama, a menos que se ejecute en una rom personalizada desordenada. Tampoco donde tienen una referencia estática a la aplicación