2016-10-11 22 views
2

嗨我正在使用產品風味以獲得我的應用程序的付費版和免費版。我設法做任何需要的事情。然而,laucher中的應用程序名稱似乎對於兩種風格都是相同的。我就是這麼做的。使用產品風味時,應用程序名稱在啓動器中不會更改

productFlavors { 
    free { 
     applicationId "com.my.app" 
     versionCode 11 
     versionName "1.11" 
     resValue "string", "app_name", "App free" 
    } 
    pro { 
     applicationId "com.my.app.pro" 
     versionCode 1 
     versionName "1.0" 
     resValue "string", "app_name", "App pro" 
    } 
} 

然後在我的清單文件我有以下行

android:label="@string/app_name" > 

早些時候,我同值「App免費」我的字符串資源文件中有一個字符串APP_NAME。我從文件中刪除了該字符串,並將字符串添加到產品風味塊中,如上所述。

問題是,在付費和免費版本中,啓動器中的應用程序名稱顯示爲「應用程序免費」,即使它應該是專業版中的「應用程序專業人員」。

該名稱顯示在設置的應用程序列表中或安裝時。在發射器中的圖標下方只有這個名稱不會改變。

我試過重新啓動手機,但徒勞無功。有人可以請幫助。我正在使用Nexus 5 Android 6.謝謝!

+0

你正在測試哪個啓動器? –

+0

@KamranAhmed默認的一個 – varunkr

+0

您是否嘗試過爲每種風味提供不同的應用程序ID? – Christopher

回答

1

您可以嘗試在你的終端運行以下命令:

adb shell am broadcast -a "android.intent.action.PACKAGE_CHANGED" -d "package:com.your.package" 

與應用程序的包名稱更換com.your.package。如果它不起作用,您可以嘗試向here in the documentation提及更多具體的細節。

如果這個技巧可以解決,每當應用程序的風格發生變化時,您都可以發送相同的廣播,以便啓動程序應用程序可以知道何時需要刷新您的應用程序詳細信息。

+0

感謝您的答案卡姆蘭,將檢查此。 – varunkr