Android Studio 無設備打包與有設備打包小記

1.無設備打包(電腦沒有連接手機設備或模擬器)

Android如果沒有在項目build.gradle配置打包密鑰這些的時候,打包方式爲

Build裏的Generate Signed Apk然後配置密碼直接打包就可以了

如果在項目build.gradle配置了打包密鑰這些,例子如下

signingConfigs {
    debug {
        storeFile file(DEBUGKEY)
    }
    release {
        storeFile rootProject.file("${SIGNFILE}")
        storePassword KEY_STORE_PASSWORD
        keyAlias KEY_ALIAS
        keyPassword KEY_ALIAS_PASSWORD
    }
}

buildTypes {
    debug{
        buildConfigField 'boolean','logEnable',"true"
    }
    release {
        minifyEnabled false
        zipAlignEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        signingConfig signingConfigs.release
    }
}

其中數值在gradle.properties裏配置,當然路徑和密碼這些就是自己建密鑰的時候設置的了
 

#Debug\u7B7E\u540D
DEBUGKEY = C://keystores/debug.keystore

#\u7B7E\u540D\u914D\u7F6E
SIGNFILE = keystore/Key_Android
KEY_STORE_PASSWORD = ALeeTest
KEY_ALIAS = ALeeTest
KEY_ALIAS_PASSWORD = ALeeTest

現在可以直接使用Android Studio右側的gradle打包了,一般測試人員打正式包都是這種方式打包,打出來的正式包別忘了用三方軟件(如360加固)加固,功能位置截圖

一般雙擊assembleRelease就是打正式包了,具體位置爲項目名->app->Tasks->build->assembleRelease
如上面截圖的MatrixLearning->MatrixLearning(root)->Tasks->build->assembleRelease


2.有設備打包(電腦連接上手機設備或模擬器)

有設備打包使用的是直接點擊執行打包按鈕,打出來的包會直接安裝到設備上
下面主要講一下打包的launcher mode配置,配置在

下拉後選擇Edit Configurations

常用到的是Launch Options

一般Launch爲Default Activity

這時要在AndroidManifest裏給你想要軟件默認打開的activity添加intent-filter

<intent-filter>
    <action android:name="android.intent.action.MAIN" />

    <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

當Launch選擇Nothing時,

AndroidManifest添不添加Intent-filter都沒關係,包打出來安裝後在桌面是看不到軟件圖標的,只能在系統已安裝應用的列表裏找到,這時候這個軟件無法單獨打開,只能通過第三方軟件去吊起其中的類來打開

 

當Launch選擇Specified Activity時

我們需要在下面的

activity里加上要打開的類,這種方式有圖標,但是打開軟件必定是首先打開這個activity,activity右面的三個小點···我們點開可以根據activity名搜索或直接在項目路徑裏找,十分方便

注意,這種方式選擇的activity,必須要在AndroidManifest裏面聲明<intent-filter>,一般聲明成下面這樣即可
 

<intent-filter>
    <action android:name="android.intent.action.MAIN"/>
    <category android:name="android.intent.category.DEFAULT"/>
</intent-filter>

 

最後Lanunch選擇URL時

要打開的activity需要在AndroidManifest配置如下intent-filter

<intent-filter>
    <!--其中xl爲scheme協議,其他port,host,path可根據自己喜歡配置-->
    <data android:scheme="xl" android:host="test" android:port="8888" android:path="/testPath"/>

    <!--下面這三個一定要配上,不然會報錯-->
    <category android:name="android.intent.category.DEFAULT"/>
    <action android:name="android.intent.action.VIEW"/>
    <category android:name="android.intent.category.BROWSABLE"/>
</intent-filter>

然後在launcher options里根據配置填寫url即可,根據上面配置填寫的url爲

執行打包的按鈕位置爲

你會發現這種方式打出來的包是debug包,如果你要打release包,可以在Android Studio的左側工具欄選擇Build Variants

然後點擊一下debug

此時就可以選擇爲release啦,選擇後重新點擊一下執行按鈕,再打出來的包就是release包了




無論是有設備打包,還是無設備打包,打出來的包都會在項目裏有備份,備份的路徑看截圖(release包出現unsigned是因爲沒有在build.gradle裏配置簽名設置)

這次的小記到這裏暫時結束了。

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