[英]How to trigger update if the new app version is available ( FROM GITHUB )
在我的應用程序中,我想創建一個功能,它會在啟動時檢查是否有新版本的應用程序可用。 如果是,則顯示帶有“是/否”選項的警報。
我已經嘗試使用這個家伙GitHub的庫。 我試圖通過純 GitHUB 和 UpdateFrom.XML 來做到這一點,但似乎沒有任何效果。
我有這樣的東西
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_login)
val toolbar: Toolbar = findViewById(R.id.toolbar)
setSupportActionBar(toolbar)
val policy: StrictMode.ThreadPolicy = StrictMode.ThreadPolicy.Builder().permitAll().build()
StrictMode.setThreadPolicy(policy)
val drawerLayout: DrawerLayout = findViewById(R.id.drawer_layout)
val navView: NavigationView = findViewById(R.id.nav_view)
val toggle = ActionBarDrawerToggle(
this,
drawerLayout,
toolbar,
R.string.navigation_drawer_open,
R.string.navigation_drawer_close
)
drawerLayout.addDrawerListener(toggle)
toggle.syncState()
drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED)
navView.setNavigationItemSelectedListener(this)
var updater = AppUpdater(this)
.setUpdateFrom(UpdateFrom.XML)
.setDisplay(Display.DIALOG)
.setTitleOnUpdateAvailable("Nová verzia dostupná")
.setContentOnUpdateAvailable("Stiahnite si prosím novú verziu aplikácie")
.setTitleOnUpdateNotAvailable("Nová verzia nie je dostupná")
.setContentOnUpdateNotAvailable("Nová verzia aplikácie nie je dostupná. Skúste neskôr")
.setButtonUpdate("Stiahnúť")
.setButtonDismiss("Neskôr")
.setIcon(R.drawable.ic_system_update_white_24dp)
.setCancelable(false)
.setUpdateXML("https://github.com/MyAccount/MyApp/tree/master/app/src/main/res/xml/provider_paths.xml")
updater.start()
}
正如我上面所說。 我想檢查應用程序的版本,以及是否有比下載更新的版本並更新應用程序的當前版本。
為了快速回答您的問題 -是的,您可以將您的版本存儲在 GitHub 版本頁面中,然后在您的應用程序中硬編碼指向該頁面的鏈接,並使用聰明的解析器(或 GitHub API)您將能夠獲取應用程序的鏈接去下載。 因此,可以肯定地手動進行。
但相反,我會嘗試說服你不要這樣做,我能想到的原因有很多。 您應該始終使用 Google Play 等分銷渠道或其他替代渠道。
所以,是的,有很多理由不自己做。 這只是我的想法(不知道你的問題背后的原因),但可能還有很多要補充的點。
當然,當您真的想手動強制更新時,可能有一個非常狹窄的用例,但無論如何我建議您考慮走這條路的后果。
更新:谷歌將發布(已經發布?)一個庫,可以讓你檢查更新,但即便如此,你也需要提前考慮強制更新——至少提前一個版本。 另請注意,Google 服務並非在每台設備上都是最新的,並且它們在許多地區都不可用,因此這也不是 100% 可靠的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.