2016-11-11 13 views
0

Androidアプリのユーザーが必要なときに非表示にすることを許可します。 私は既に、非表示/非表示アクションを実行するためのコードを持っており、隠蔽はうまく動作します。 今、アプリを元に戻す方法を呼び出すことはできますか? 私は、もしそのアプリケーションが隠されていれば、そのアプリを隠すためにメソッドを呼び出す "ボタンをクリックする"と言いましょうか?Android:アプリの再表示方法

// method to hide the app icon 
public static void hideAppIcon(final Context context) 
    { 
    PackageManager p = context.getPackageManager(); 
    // activity which is first time open in manifest file which is declare as <category android:name="android.intent.category.LAUNCHER" /> 
    ComponentName componentName = new ComponentName(context, SplashActivity.class); 
    p.setComponentEnabledSetting(componentName,PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP); 
    } 


// method to unhide the app icon 
public static void unhideAppIcon(final Context context) 
    { 
    PackageManager p = context.getPackageManager(); 
    // activity which is first time open in manifest file which is declare as <category android:name="android.intent.category.LAUNCHER" /> 
    ComponentName componentName = new ComponentName(context, SplashActivity.class); 
    p.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP); 
    } 

答えて

0

ここで私は他のアプリから学んだ方法があります:ここでは

は私の表示/非表示のコードです。アイコンを「隠す」のではなく、アプリのアイコンとラベルを変更します。 "設定"や "電卓"のような組み込みのアプリケーションとしてアプリを隠す

もう1つの解決策(必要に近い場合があります)は、アプリにインテントフィルタを追加して、電話のようなものを検出することです。ユーザーが特定の番号に電話をかけると、あなたはそのアプリを再表示します。

thisを参照してください。

希望すると、これが役立ちます。

+0

アプリが表示されていない状態でMainAcitvityを呼び出すとエラーが発生することがあります。あなたはそれを再現する必要があります。 –

+0

アイコンやラベルを変えるのは素晴らしい選択肢のようですが、それについての参考文献/コードを送ってください。それは私の最初の選択でしたが、システムアプリだけがプログラムでアイコンを変更できることを読んだので、アイコンを隠すことにしました...ありがとう! – Ciammarica

+0

あなたが知っているようにアイコンを変更することは不可能です。しかし、いくつかの回避策があります。チェックアウト[この記事](http://stackoverflow.com/q/1103027/4319678)。それが助けてくれることを願って。 –

関連する問題