2011-10-18 14 views
5

Deseo obtener el nombre de mi aplicación. ¿Cómo puedo obtener eso? Gracias de antemano.¿Cómo obtener el nombre de la aplicación en android?

+0

¿Está buscando el nombre de la etiqueta, el nombre del paquete o el nombre apk? ¿Por qué necesitas esta información? – spatulamania

+0

Estoy buscando el nombre de la aplicación porque lo necesito al momento de iniciar la aplicación. – Prachi

+0

El nombre del archivo apk real es arbitrario y no debería afectar nada. ¿Por qué el nombre del paquete es insuficiente? – spatulamania

Respuesta

4

puede utilizar PackageManager # getApplicationInfo()

Para obtener el nombre de la aplicación para todos los paquetes instalados en el dispositivo. Asumiendo que tiene el objeto actual contexto ctx

Resources appR = ctx.getResources(); 
CharSequence txt = appR.getText(appR.getIdentifier("app_name", 
"string", ctx.getPackageName())); 
+0

Devuelve el nombre del paquete, no el nombre de la aplicación. – Prachi

+0

PackageManager # getApplicationInfo()? –

+1

hey gracias! tengo el nombre de la aplicación. – Prachi

3

Puede utilizar PackageManager clase para obtener ApplicationInfo:

final PackageManager pm = context.getPackageManager(); 
ApplicationInfo ai; 
try { 
    ai = pm.getApplicationInfo(packageName, 0); 
} catch (final NameNotFoundException e) { 
    ai = null; 
} 
final String applicationName = (String) (ai != null ? pm.getApplicationLabel(ai) : "(unknown)"); 

EDIT: CharSequence c = pm.getApplicationLabel(pm.getApplicationInfo(info.processName,PackageManager.GET_META_DATA));

Esto haría return the application name as defined in <application> tag of its manifest.

+0

Intenté este código pero está devolviendo el nombre del paquete no el nombre de la aplicación. – Prachi

+0

qué tal para esta línea, CharSequence c = pm.getApplicationLabel (pm.getApplicationInfo (info.processName, PackageManager.GET_META_DATA)); – user370305

10

Utilice esta

String applicationName = getResources().getString(R.string.app_name); 

Referencia: Resource Types

+0

nice and ez :-) –

+0

@Downvoters ¿Por qué downvotes aquí? ¿Por qué no publicar un comentario al respecto? ¿No eres un hombre? –

+1

¡Fácil! gracias .. –

0

contexto tiene la función getString (int resid): Context

por lo que se puede utilizar fácilmente como este.

context.getString(R.string.app_name); 
Cuestiones relacionadas