2016-04-13 13 views
0

私は、アプリケーションがデバイスにインストールされている場合、私はパッケージ名からアプリケーション名を取得する必要があるために、アプリケーション名を持つサーバーに更新する必要があるアプリケーションを開発しています。アンドロイドのパッケージ名からアプリケーション名を取得するには?

例: - パッケージから考えてみましょう: - <com.example.Deals>これからは<Deals>を取得する必要があります。どうやってやるの。

ここで私はブロードキャスト受信機を使用してパッケージ名を取得したコードです。

public class Receiver extends BroadcastReceiver{ 

@Override 
public void onReceive(Context context, Intent intent) { 
    // TODO Auto-generated method stub 
    String action = intent.getAction(); 
    if(action.equals("android.intent.action.PACKAGE_ADDED")){ 
     Logger.debug("DATA:"+intent.getData().toString()); 
    } 
    if(action.equals("android.intent.action.PACKAGE_REMOVED")){ 
     Logger.debug("DATA:"+intent.getData().toString()); 
    } 
    if(action.equals("android.intent.action.PACKAGE_REPLACED")){ 
     Logger.debug("DATA:"+intent.getData().toString()); 
    } 
} 

}

+0

http://developer.android.com/intl/es/reference/android/content/pm/PackageManager.html –

+0

[パッケージ名からアプリケーション名を取得]の可能な複製(http://stackoverflow.com/質問/ 5841161/get-application-name-from-package-name) –

答えて

1

あなたはここに次のコード

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

チェック次のコード

PackageManager packageManager = context.getPackageManager(); 
ApplicationInfo applicationInfo; 
try { 
    applicationInfo = packageManager.getApplicationInfo(packageName, 0); 
} catch (final NameNotFoundException e) {} 
final String title = (String)((applicationInfo != null) ? packageManager.getApplicationLabel(applicationInfo) : "???"); 
0
PackageManager packageManagers= getApplicationContext().getPackageManager(); 
     try { 
      String appName = (String) packageManagers.getApplicationLabel(packageManagers.getApplicationInfo("com.example.packagename", PackageManager.GET_META_DATA)); 
     } catch (PackageManager.NameNotFoundException e) { 
      e.printStackTrace(); 
     } 

を使用してパッケージからアプリケーション名を取得することができ、あなたのパッケージ名を変更するために欠場いけません​​

関連する問題