কম্পিউটার টিউটোরিয়াল

Android-এ বর্তমান প্যাকেজ নাম (Package Name) প্রিন্ট করা

Context.getPackageName() ব্যবহার করে প্যাকেজ নাম বের করা

প্রতিটি Android অ্যাপ্লিকেশনের একটি унікаল প্যাকেজ নাম থাকে যা Google Play Store-এ ও ডিভাইসে অ্যাপ আইডেন্টিফাই করতে ব্যবহৃত হয়। এটি Context ক্লাসের getPackageName() মেথড দিয়ে পাওয়া যায়।

লেআউট (activity_main.xml)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical"
    android:padding="16dp">

    <TextView
        android:id="@+id/text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24sp"
        android:padding="16dp" />

</LinearLayout>

MainActivity.java

package com.example.myapplication;

import android.os.Bundle;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    TextView textView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        textView = findViewById(R.id.text);
        
        // প্যাকেজ নাম প্রিন্ট
        String packageName = getPackageName();
        textView.setText("Package Name:\n" + packageName);
        
        // অতিরিক্ত ইনফো
        String versionName = "";
        int versionCode = 0;
        try {
            android.content.pm.PackageInfo info = getPackageManager().getPackageInfo(packageName, 0);
            versionName = info.versionName;
            versionCode = info.versionCode;
        } catch (Exception e) {
            e.printStackTrace();
        }
        textView.append("\n\nVersion: " + versionName + " (" + versionCode + ")");
    }
}

প্যাকেজ নামের গুরুত্ব

  • Application ID: build.gradle-এ applicationId (ডিফল্টলি প্যাকেজ নামই)
  • Unique Identifier: Play Store, ডিভাইস, ADB সব জায়গায় একই
  • Permission Model: অন্য অ্যাপের ডেটা অ্যাক্সেস কন্ট্রোল করে
  • Process Name: ডিফল্ট প্রসেস নাম প্যাকেজ নাম হয়

রানটাইমে প্যাকেজ ইনফো পাওয়ার অন্যান্য উপায়

// ১. Context থেকে
String pkg = context.getPackageName();

// ২. PackageManager থেকে অ্যাপ লেবেল
String appLabel = getPackageManager().getApplicationLabel(
    getPackageManager().getApplicationInfo(pkg, 0)
).toString();

// ৩. Installer প্যাকেজ নাম (যে স্টোর থেকে ইনস্টল হয়েছে)
String installer = getPackageManager().getInstallerPackageName(pkg);
// "com.android.vending" = Play Store, "com.google.android.feedback" = Play Console, null = সাইডলোড

// ৪. সিগনেচার (সাইনিং সার্টিফিকেট)
android.content.pm.Signature[] sigs = getPackageManager()
    .getPackageInfo(pkg, PackageManager.GET_SIGNATURES).signatures;

Gradle-এ Application ID সেট করা

android {
    defaultConfig {
        applicationId "com.mycompany.myapp" // এটি হবে প্যাকেজ নাম
        versionCode 1
        versionName "1.0"
    }
    
    // ফ্লেভার অনুযায়ী আলাদা প্যাকেজ নাম
    productFlavors {
        free { applicationIdSuffix ".free" }
        pro { applicationIdSuffix ".pro" }
    }
}

Android-এ বর্তমান প্যাকেজ নাম (Package Name) প্রিন্ট করা

  1. এন্ড্রয়েডে বর্তমান ব্লুটুথ নাম পাওয়ার উপায়

  2. অ্যান্ড্রয়েডে বর্তমান থ্রেডের নাম পাওয়ার পদ্ধতি

  3. অ্যান্ড্রয়েডে চলমান অ্যাপ্লিকেশন তালিকা পাওয়ার উপায়

  4. এন্ড্রয়েডে প্রোগ্রামেটিক্যালি বর্তমান GPS লোকেশন কীভাবে পাবেন?