آموزش مخفی کردن آیکون برنامه داخل لانچر در برنامه نویسی اندروید

آموزش مخفی کردن آیکون برنامه داخل لانچر در برنامه نویسی اندروید

آموزش مخفی کردن آیکون برنامه داخل لانچر در برنامه نویسی اندروید


به دلایل خیلی زیادی ممکن است که بخواهید آیکون برنامه‌ی خود را مخفی کنید تا دیگر در لانچر نمایش داده نشود! البته آیکون در قسمت برنامه‌های نصب شده همچنان قابل مشاهده خواهد بود و این فقط در لانچر است که نمایش داده نمی‌شود. منظور از آیکون برنامه نیز، آیکونی می‌باشد که برای اکتیویتی تنظیم شده است؛ چرا که برنامه‌ی شما ممکن است چندین آیکون در لانچر داشته باشد (در این‌مورد می‌توانید پست”به زودی” را مطالعه کنید).

تابع مربوط به این کار

تابع زیر را بنویسید:

public static void activityEnable(Context context, Class<?> activity, boolean enable) {
        context.getPackageManager().setComponentEnabledSetting(
                new ComponentName(context, activity),
                enable ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED : PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
                PackageManager.DONT_KILL_APP);
}
  • ورودی اول – context: یک کانتکس که می‌تواند مربوط به اکتیویتی یا اپلیکیشن و … باشد.
  • ورودی دوم – activity: کلاس اکتیویتی‌ای که می‌خواهیم آن را مخفی کنیم.
  • ورودی سوم – enable: اگر false باشد مخفی شده و اگر true باشد بالعکس.

برای مثال، فرض کنید این کد را داخل MainActivity می‌نویسیم.

activityEnable(MainActivity.this, MainActivity.class, false);

آیکون اندکی بعد از فعال و غیرفعال شدن، در لانچر رفرش خواهد شد و همچنین موقع غیرفعال یا مخفی کردن آن، اگر در لانچر روی آیکون کلیک کنیم، با پیام اپلیکیشن نصب نشده است موجه می‌شویم و اندکی بعد، آیکون مخفی خواهد شد.

غیرفعال کردن به صورت پیش‌فرض

شاید بخواهید آیکون برنامه از ابتدا مخفی باشد، برای انجام این کار در آن اکتیویتی‌ای که android.intent.category.LAUNCHER را دارد، ویژگی enabled آن را false قرار دهید.

<activity
    android:name=".MainActivity"
    android:enabled="false">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
</activity>

شما می‌توانید، بقیه‌ی اکتیوتی‌هایتان را هم که در لانچر دارای آیکون می‌باشند، با استفاده از این روش‌ها، مخفی کنید.

شاید بعد از مخفی کردن برنامه، بخواهید کاربر به نحوی بتواند اکتیوتی مورد نظر را باز کند که در این‌صورت می‌توانید از پست “آموزش بررسی شماره هنگام تماس گرفتن در برنامه نویسی اندروید” استفاده کنید.

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

cp-codfk

نظرات ثبت شده 3 دیدگاه

    1. حمید امیرحاجلو کاربر مهمان گفت:

      ایول عالی بود

      11
      1. علی کاربر مهمان گفت:

        سلام مخفی کردیم چطوری بعدا بازش کنیم برنامه رو

        11
    2. omid کاربر مهمان گفت:

      سلام، چرا موقع استفاده از این روش آیکن مخفی میشه ولی برنامه هم کرش میکنه و پیام has stopped میده؟

      21
توضیحات پیشنهادی نظرات اشتراک