Há uma maneira mais fácil do que as outras respostas que não exigem que você nomeie o recurso explicitamente ou se preocupe com exceções com nomes de pacotes. Também funciona se você tiver usado uma string diretamente em vez de um recurso.
Apenas faça:
public static String getApplicationName(Context context) {
ApplicationInfo applicationInfo = context.getApplicationInfo();
int stringId = applicationInfo.labelRes;
return stringId == 0 ? applicationInfo.nonLocalizedLabel.toString() : context.getString(stringId);
}
Espero que isto ajude.
Editar
À luz do comentário de Snicolas, modifiquei o item acima para que ele não tente resolver o id se for 0. Em vez disso, ele usa nonLocalizedLabel
como backoff. Não há necessidade de empacotar na tentativa / captura.
android:name
. Se você codificou uma string, ela falhará.try ... catch
.Se não for mencionado no arquivo strings.xml / codificado no AndroidManifest.xml por qualquer motivo, como android: label = "MyApp"
Ou, se você souber o ID do recurso String, poderá obtê-lo diretamente via
fonte
fonte
CharSequence
. Eu acho que você precisa.toString()
no final.De qualquer uso do Contexto:
fonte
Se você souber o nome do pacote, use o seguinte trecho
fonte
Se você precisar apenas do nome do aplicativo, não do nome do pacote, basta escrever este código.
fonte
No Kotlin , use os seguintes códigos para obter o Nome do Aplicativo:
fonte
No Kotlin é simples:
fonte
Obter nome da aplicação usando RunningAppProcessInfo como:
fonte
Ok pessoal, outra opção elegante é
Application.Context.ApplicationInfo.NonLocalizedLabel
verificado para a etiqueta android codificada no elemento do aplicativo.
<application android:label="Big App"></application>
Referência: http://developer.android.com/reference/android/content/pm/PackageItemInfo.html#nonLocalizedLabel
fonte
O comentário da fonte adicionado a
NonLocalizedLabel
nos direciona agora para:fonte
Você já tentou usar o
PackageManager#getActivityInfo()
método? Haverá um campo que deve conter o nome do aplicativo.Veja a resposta para uma pergunta muito semelhante aqui .
fonte