2016-07-14 25 views

Antwort

0

Sie können Firebase-Benachrichtigungen wie beschrieben here verwenden. Sie können Ihr Segment (z. B. App-Version) wie beschrieben here auswählen.

+0

Ich denke, Ihre Frage ist doppelt. Ich habe eine Antwort auf eine Frage geschrieben, die sehr ähnlich ist. Könntest du es bitte überprüfen und sehen, ob wir es herausfinden? http://stackoverflow.com/a/40029702/3732187 –

0

hinzufügen, diese Abhängigkeit zu Ihrer gradle Datei ..

com.github.rampo.updatechecker:library:2.1.8 

Und versuchen Sie diesen Code in Ihre Aktivität ..

public static String NEW_VERSION = "1.1.0"; 
public void checkForAppUpdate() { 
     try { 
      if (!((Activity) context).isFinishing()) { 
        UpdateChecker.setNotice(Notice.NOTIFICATION); 
        UpdateChecker.setNoticeIcon(R.drawable.your_notification_logo); 
        String s = "Hello User, New version of this application is now available on play store."; 
        if (Comparator.isVersionDownloadableNewer((Activity) context, NEW_VERSION)){ 

         SharedPreferences pref = context.getSharedPreferences(UpdateChecker.PREFS_FILENAME, 0); 
         boolean b = pref.getBoolean(UpdateChecker.DONT_SHOW_AGAIN_PREF_KEY + NEW_VERSION, false); 
         if (!b) { 
          displayAlertDialogforPlayStore(context, "Update Available", s); 
         } 
        } 
} 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 

und Funktion displayAlertDialogforPlayStore() ist ...

public void displayAlertDialogforPlayStore(final Context context, String title, 
               String message) { 
     try { 
      final AlertDialog.Builder alert = new AlertDialog.Builder(context); 

      alert.setIcon(R.drawable.your_notification_logo); 
      if (title != null) { 
       alert.setTitle(title); 
      } 
      alert.setMessage(message); 

      alert.setPositiveButton("Update Now", new DialogInterface.OnClickListener() { 

       @Override 
       public void onClick(DialogInterface dialog, int which) { 



        final String appPackageName = context.getPackageName(); 
        Intent intent = new Intent(Intent.ACTION_VIEW); 
        intent.setData(Uri.parse("market://details?id=" + appPackageName)); 
        context.startActivity(intent); 
       } 
      }); 

      alert.setNegativeButton("Later", new DialogInterface.OnClickListener() { 

       @Override 
       public void onClick(DialogInterface dialog, int which) { 
       } 
      }); 

      alert.show(); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 

Dieser Code zeigt sowohl Benachrichtigung als auch alertDailog für die Aktualisierung an.