問題 System.out.println(versionName);輸出結果:System.out: INSTANT_RUN

問題

System.out.println(versionName);輸出結果:System.out: INSTANT_RUN
代碼:
private void initDate() {
    PackageManager pm= getPackageManager();
    try {
        PackageInfo packageInfo= pm.getPackageInfo(getPackageName(),0);
        versionName=packageInfo.versionName;
        versionCode =packageInfo.versionCode;
        System.out.println(versionCode);
        System.out.println(versionName);
        tv_vname.setText(versionName);
    } catch (PackageManager.NameNotFoundException e) {
        e.printStackTrace();
    }
}
佈局:
<TextView
    android:id="@+id/tv_splash_version"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="土豆版"
    android:textSize="24dp"
    android:layout_centerInParent="true"/>
Grade:
versionCode 1
versionName "大西瓜版"
運行結果


Instant Run

Instant Run,是android studio2.0新增的一個運行機制,在你編碼開發、測試或debug的時候,它都能顯著減少你對當前應用的構建和部署的時間。當我們第一次點擊run、debug按鈕的時候,它運行時間和我們往常一樣。但是接下去的時間裏,你每次修改代碼後點擊run、debug按鈕,對應的改變將迅速的部署到你正在運行的程序上,傳說速度快到你都來不及把注意力集中到手機屏幕上,它就已經做好相應的更改。

參考:你真的瞭解 Instant Run 嗎? - OPEN 開發經驗庫http://www.open-open.com/lib/view/open1464859854397.html 
           Instant Run 工作原理及用法 | 神刀安全網http://www.shellsec.com/news/17385.html 
           Android 在Multidex下使用Instant Run_Android開發-織夢者http://www.zhimengzhe.com/Androidkaifa/32671.html 

問題解決

  • 關閉Instant Run :Instant Run是默認開啓的。設置路徑:Preferences -> Build,Execution,Deployment -> Instant Run

  • 刪除 :E:\GitHub\GetPhoneNumber\safeapp\build\outputs\apk\safeapp-debug.apk,                        E:\GitHub\GetPhoneNumber\safeapp\build\outputs\apk\safeapp-debug-unaligned.apk
  • 運行:結果如下


結論

此乃無關緊要,不用在意,不建議關閉Instant Run


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章