国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南

這篇具有很好參考價(jià)值的文章主要介紹了【Android 從入門到出門】第一章:Android開發(fā)技能入門指南。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

???♂? 個(gè)人主頁:@艾迦洼的個(gè)人主頁
???作者簡介:后端程序猿
?? 希望大家多多支持,如果文章對你有幫助的話,歡迎 ????????


【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

目錄

  • ??第一章:Android開發(fā)技能入門指南
    • ??1. 技術(shù)要求
    • ??2. 使用變量和習(xí)慣用法在Kotlin中編寫第一個(gè)程序
      • ??2.1 準(zhǔn)備
      • ??2.2 如何實(shí)現(xiàn)
      • ??2.3 如何工作
      • ??2.4 參考
    • ??3. 使用Android Studio創(chuàng)建一個(gè)Hello, Android Community應(yīng)用程序
      • ??3.1 準(zhǔn)備
      • ??3.2 如何實(shí)現(xiàn)
      • ??3.3 如何工作
    • ??4. 在Android Studio中設(shè)置模擬器
      • ??4.1 準(zhǔn)備
      • ??4.2 如何實(shí)現(xiàn)
      • ??4.3 如何工作
    • ??5. 在Jetpack Compose中創(chuàng)建一個(gè)按鈕
      • ??5.1 準(zhǔn)備
      • ??5.2 如何實(shí)現(xiàn)
      • ??5.3 如何工作
      • ??5.4 參考
    • ??6. 使用gradlew命令在Android Studio中清理和運(yùn)行您的項(xiàng)目
      • ??6.1 準(zhǔn)備
      • ??6.2 如何實(shí)現(xiàn)
      • ??6.3 如何工作
    • ??7. 了解Android項(xiàng)目結(jié)構(gòu)
      • ??7.1 準(zhǔn)備
      • ??7.2 如何實(shí)現(xiàn)
      • ??7.3 如何工作
    • ??8. 在Android Studio中調(diào)試和登錄
      • ??8.1 準(zhǔn)備
      • ??8.2 如何實(shí)現(xiàn)
      • ??8.3 如何工作
      • ??8.4 參考
    • ?? 交友小貼士:

??第一章:Android開發(fā)技能入門指南

Android操作系統(tǒng)(OS)是最受歡迎的移動設(shè)備平臺之一,在全球擁有眾多用戶。該操作系統(tǒng)用于汽車和智能手表、電視、手機(jī)等可穿戴設(shè)備,這使得Android開發(fā)者的市場非常廣闊。
因此,新開發(fā)人員需要學(xué)習(xí)如何利用新的現(xiàn)代Android開發(fā)(MAD)技能構(gòu)建Android應(yīng)用程序。

自2008年發(fā)布以來,Android已經(jīng)走過了漫長的道路,并在第一個(gè)集成開發(fā)環(huán)境(IDES)、Eclipse和NetBeans中使用。
今天,Android Studio是Android開發(fā)的推薦IDE,與以前Java是首選語言不同的是,Kotlin現(xiàn)在是首選語言。

Android Studio包括對Kotlin、Java、c++和其他編程語言的支持,使得這個(gè)IDE適合不同技能的開發(fā)人員。

因此,在本章結(jié)束時(shí),按照指南,你將安裝Android Studio,使用Jetpack Compose構(gòu)建你的第一個(gè)Android應(yīng)用程序,并學(xué)習(xí)一些Kotlin語法,利用Android開發(fā)的首選語言。
此外,本介紹將為您了解對MAD至關(guān)重要的高級材料做好基礎(chǔ)準(zhǔn)備。

在本章中,我們將介紹以下內(nèi)容:

  • 使用變量和習(xí)慣用法在Kotlin中編寫第一個(gè)程序
  • 使用Android Studio創(chuàng)建一個(gè)Hello, Android Community應(yīng)用程序
  • 在Android Studio中設(shè)置模擬器
  • 在Jetpack Compose中創(chuàng)建一個(gè)按鈕
  • 使用gradlew命令在Android Studio中清理和運(yùn)行您的項(xiàng)目
  • 了解Android項(xiàng)目結(jié)構(gòu)
  • 在Android Studio中調(diào)試和登錄

??1. 技術(shù)要求

成功運(yùn)行Android IDE和模擬器可能會讓您的計(jì)算機(jī)望而生畏。
你可能聽過一個(gè)笑話,說運(yùn)行Android Studio的機(jī)器在冬天可以用作加熱器。
好吧,這是有一定道理的,所以你的計(jì)算機(jī)應(yīng)該有以下規(guī)格,以確保你的系統(tǒng)可以應(yīng)付IDE的要求:

  • 64位微軟Windows,macOS,或Linux安裝與穩(wěn)定的互聯(lián)網(wǎng)連接。本專欄中的指南是在macOS中開發(fā)的。您也可以使用Windows或Linux筆記本電腦,因?yàn)閮烧叨紱]有區(qū)別。
  • 對于Windows和Linux用戶,您可以按照以下鏈接安裝Android Studio:https://developer.android.com/studio/install。
  • 至少8GB或更多的RAM。
  • Android Studio、Android軟件開發(fā)工具包(SDK)和Android模擬器的可用磁盤空間至少為8GB。
  • 最低屏幕分辨率為1280 × 800。
  • 你可以在這里下載Android Studio:https://developer.android.com/studio.

??2. 使用變量和習(xí)慣用法在Kotlin中編寫第一個(gè)程序

Kotlin是Android開發(fā)的推薦語言;您仍然可以選擇Java作為語言,因?yàn)樵S多遺留應(yīng)用程序仍然嚴(yán)重依賴Java。
然而,在本專欄中,我們將使用Kotlin,如果這是你第一次使用Kotlin語言構(gòu)建Android應(yīng)用程序,Kotlin組織有很好的資源來幫助你開始免費(fèi)練習(xí)和自定進(jìn)度的評估,稱為Kotlin Koans (https://play.kotlinlang.org/koans/overview).

此外,您可以使用Kotlin語言進(jìn)行多平臺開發(fā),使用Kotlin multiat form Mobile (KMM),在其中您可以在iOS和Android應(yīng)用程序之間共享標(biāo)準(zhǔn)代碼,并僅在必要時(shí)編寫特定于平臺的代碼。
KMM目前處于Alpha階段。

??2.1 準(zhǔn)備

在這個(gè)指南中,您可以使用在線Kotlin playground (https://play.kotlinlang.org/)來運(yùn)行代碼,也可以在Android Studio IDE中運(yùn)行代碼。
或者,如果你打算用Koans做更多的Kotlin練習(xí)題,你可以下載并使用IntelliJ IDEA IDE。

??2.2 如何實(shí)現(xiàn)

在這個(gè)指南中,我們將探索和修改一個(gè)簡單的程序,我們將在Kotlin中編寫;你可以把程序想象成我們給計(jì)算機(jī)或移動設(shè)備的指令,讓它們執(zhí)行我們給它們的動作。
例如,我們將在程序中創(chuàng)建一個(gè)問候語,然后編寫另一個(gè)程序。

對于這個(gè)指南,你可以選擇Android Studio或免費(fèi)的在線IDE,因?yàn)槲覀儗⒔佑|到一些Kotlin功能:

  1. 如果您第一次選擇使用Kotlin在線游樂場,您將看到類似以下截圖的內(nèi)容,其中包含一個(gè)println語句,表示Hello, world,但對于我們的示例,我們將將該問問語更改為Hello, Android Community,并運(yùn)行代碼。
fun main() {
    println("Hello, Android Community")
}

// Hello, Android Community
  1. 讓我們看另一個(gè)例子;面試中常用的一個(gè)算法問題–反轉(zhuǎn)字符串。例如,您有一個(gè)字符串Community,我們希望反轉(zhuǎn)該字符串,以便輸出為ytinummoC。有幾種方法可以解決這個(gè)問題,但是我們將使用Kotlin慣用的方法來解決它。

  2. 在IDE的playground或Kotlin playground中輸入以下代碼:

fun main() {
    val stringToBeReversed = "Community"
    println(reverseString(stringToBeReversed))
}

fun reverseString(stringToReverse: String): String {
    return stringToReverse.reversed()
}

// ytinummoC
??2.3 如何工作

有必要在Kotlin中提到,通過利用默認(rèn)參數(shù)值并只設(shè)置需要更改的參數(shù),有一些獨(dú)特的方法可以保持代碼更干凈、更精確和更簡單。

fun在Kotlin編程語言中代表函數(shù),而Kotlin中的函數(shù)是執(zhí)行特定任務(wù)的程序的一部分。
第一個(gè)示例中的函數(shù)名稱是main(),而在main()函數(shù)中,我們沒有任何輸入。
一般來說,函數(shù)都有名稱,以便在代碼庫比較復(fù)雜時(shí)能夠區(qū)分它們。

此外,在Java中,函數(shù)類似于方法。
函數(shù)名有兩個(gè)括號和大括號,還有println,它告訴系統(tǒng)打印一行文本。

如果您使用過Java,您可能會注意到Kotlin編程語言與Java非常相似。
然而,開發(fā)人員現(xiàn)在談?wù)揔otlin語言對開發(fā)人員來說有多棒,因?yàn)樗峁┝烁弑憩F(xiàn)力的語法和復(fù)雜的類型系統(tǒng),并處理了Java多年來一直存在的空指針問題。
為了充分利用Kotlin語言的強(qiáng)大功能并編寫更簡潔的代碼,了解Kotlin習(xí)慣用法可能是有益的。
Kotlin習(xí)語是經(jīng)常使用的集合,有助于操作數(shù)據(jù),使Android開發(fā)人員的體驗(yàn)更加輕松。

在第二個(gè)示例中,我們有兩個(gè)函數(shù)main()和reverseString()。
main()不接受任何輸入,但reverseString()接受String輸入。
您還會注意到我們使用了val,這是Kotlin使用的一個(gè)唯一的詞,它指的是一個(gè)只能設(shè)置為一個(gè)值的不可變值,而var是一個(gè)可變變量,這意味著它可以被替換。

我們創(chuàng)建一個(gè)val stringToBeReversed,它是一個(gè)字符串,并將其命名為“Community”,然后在main()函數(shù)中調(diào)用println,并在reverseString()函數(shù)中傳遞我們想要打印的文本。
此外,在本例中,reverseString函數(shù)從string對象中接受一個(gè)string參數(shù),然后返回一個(gè)字符串類型。

還有更多的東西要學(xué)習(xí),并且公平地承認(rèn),我們在這個(gè)指南中所涵蓋的只是您可以使用Kotlin習(xí)語的一小部分。
這個(gè)指南的目的是介紹一些概念,我們可能會在后面的章節(jié)中接觸或使用,但不是深入的,因?yàn)槲覀儗⒃诤竺娴恼鹿?jié)中探索更多的Kotlin。
因此,了解Kotlin習(xí)語是什么以及為什么它們現(xiàn)在很重要是很有必要的。

??2.4 參考

更好地理解Kotlin語法和流行的用例對您的日常工作至關(guān)重要,因此請查看以下資源:

  • JetBrains Academy有一個(gè)很棒的免費(fèi)Kotlin基礎(chǔ)課程: https://hyperskill.org/tracks/18.
  • Kotlin文檔也是一個(gè)很好的手邊資源: https://kotlinlang.org/docs/home.html.

??3. 使用Android Studio創(chuàng)建一個(gè)Hello, Android Community應(yīng)用程序

現(xiàn)在我們已經(jīng)安裝了Android Studio,我們將創(chuàng)建第一個(gè)Android應(yīng)用程序。
此外,我們將使用Compose–只是提前提一下,在這個(gè)指南中,我們不會深入討論Compose,因?yàn)槲覀冇袑iT的章節(jié)來討論Compose,即第二章,使用聲明式UI創(chuàng)建屏幕和探索Compose原理。

??3.1 準(zhǔn)備

在開始之前,了解你的Android項(xiàng)目的一致性是很有幫助的。
默認(rèn)情況下,AndroidStudio會在你的主目錄下創(chuàng)建一個(gè)包,包名為AndroidStudioProjects;在這里,您將找到您創(chuàng)建的所有項(xiàng)目。

如果要更改文件夾,還可以決定文件夾的位置。
此外,確保你使用的是最新版本的Android Studio,以利用所有偉大的功能。
要了解最新的Android版本,您可以使用以下鏈接: https://developer.android.com/studio/releases 。

??3.2 如何實(shí)現(xiàn)

在Android Studio IDE中,項(xiàng)目模板是一個(gè)Android應(yīng)用程序,它擁有創(chuàng)建應(yīng)用程序所需的所有必要部分,并幫助您開始和設(shè)置。
因此,一步一步地,我們將制作我們的第一個(gè)Android應(yīng)用程序并在模擬器上啟動它:

  1. 啟動Android Studio通過點(diǎn)擊Android Studio圖標(biāo)在您的dock或任何地方存儲Android Studio。
  2. 你會看到一個(gè)歡迎Android Studio窗口打開,你可以點(diǎn)擊New Project?;蛘?,您可以轉(zhuǎn)到File并單擊New Project。
  3. 選擇Empty Compose Activity并單擊Next。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

  1. 加載空的Compose活動屏幕后,您將看到包含Name、Package Name、Save Location、Language和Minimum SDK的字段。
    在本章中,您可以將項(xiàng)目命名為Android Community,其他設(shè)置保持不變。
    您還會注意到,默認(rèn)情況下該語言是Kotlin。
    至于最小SDK,我們的目標(biāo)是API 21: Android 5.0 (Lollipop),這表明你的應(yīng)用程序可以運(yùn)行的最小Android版本,在我們的情況下,大約是98.8%的設(shè)備。
    您還可以單擊下拉菜單,了解有關(guān)最小SDK的更多信息。單擊Finish并等待Gradle同步。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

  1. 繼續(xù)擺弄這些包,你會注意到一個(gè)MainActivity類擴(kuò)展了一個(gè)ComponentActivity(),而ComponentActivity()又?jǐn)U展了Activity();在內(nèi)部,我們有一個(gè)有趣的onCreate,它是來自ComponentActivity的重寫。
    您還將看到setContent{},這是一個(gè)用于設(shè)置可組合函數(shù)內(nèi)容的函數(shù)。
    setContent{}函數(shù)接受一個(gè)lambda表達(dá)式,該表達(dá)式包含應(yīng)該顯示的UI元素,在本例中,它包含應(yīng)用程序的主題。
    在Greeting()函數(shù)中,我們將改變所提供的并添加我們自己的問候語,即“Hello, Android Community”并運(yùn)行,我們將創(chuàng)建我們的第一個(gè)問候語:
class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            AndroidCommunityTheme {
                // A surface container using the 'background' color from the theme
                Surface(
                    modifier = Modifier.fillMaxSize(),
                    color = MaterialTheme.colorScheme.background
                ) {
                    Greeting("Android")
                }
            }
        }
    }
}
  1. 讓我們繼續(xù)修改Greeting()函數(shù),并將name參數(shù)賦值給文本:
@Composable
fun Greeting(name: String, modifier: Modifier = Modifier) {
    Text(
        text = "Hello $name!",
        modifier = modifier
    )
}

此外,你也可以將“Hello, Android Community”傳遞到默認(rèn)實(shí)現(xiàn)中,這將產(chǎn)生相同的UI。

  1. 就像在XML視圖中一樣,您可以輕松地查看正在構(gòu)建的UI,而無需使用@Preview(showBackground = true)在模擬器中運(yùn)行應(yīng)用程序,所以讓我們繼續(xù)并將其添加到我們的代碼中,如果它不可用的話。
    默認(rèn)情況下,項(xiàng)目附帶一個(gè)具有Preview()的模板:
@Preview(showBackground = true)
@Composable
fun GreetingPreview() {
    AndroidCommunityTheme {
        Greeting("Android")
    }
}
  1. 最后,當(dāng)您運(yùn)行應(yīng)用程序時(shí),您應(yīng)該看到下圖所示的屏幕。
    在下面的配方中,我們將看看如何一步一步地設(shè)置模擬器,所以不要擔(dān)心。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

??3.3 如何工作

使用Jetpack Compose創(chuàng)建視圖的主要好處是,它加快了開發(fā)時(shí)間,因?yàn)槟闶褂孟嗤恼Z言來編寫整個(gè)代碼庫(Kotlin),并且更容易測試。
您還可以創(chuàng)建可重用的組件,并根據(jù)需要對其進(jìn)行定制。
因此,要確保出錯(cuò)的幾率更低,并且必須使用XML編寫視圖,因?yàn)檫@很繁瑣。
onCreate()函數(shù)被認(rèn)為是Android應(yīng)用程序的入口點(diǎn)。
此外,我們還使用修飾函數(shù)來添加行為和修飾可組合對象。
我們將在下一章中更多地討論修飾符和表面函數(shù)的作用。

??4. 在Android Studio中設(shè)置模擬器

Android Studio是一個(gè)可靠且成熟的IDE。
因此,自2014年以來,Android Studio一直是開發(fā)Android應(yīng)用程序的首選IDE。
當(dāng)然,您仍然可以使用其他ide,但Android Studio的優(yōu)勢在于您不需要單獨(dú)安裝Android SDK。

??4.1 準(zhǔn)備

您需要完成前面的配方才能遵循此配方,因?yàn)槲覀儗⒃O(shè)置模擬器以運(yùn)行我們剛剛創(chuàng)建的項(xiàng)目。

??4.2 如何實(shí)現(xiàn)

本章旨在對初學(xué)者友好,并在您完成指南的過程中使您順利地向更高級的Android學(xué)習(xí)。
讓我們按照以下步驟來看看如何設(shè)置模擬器并在使用Android Studio recipe創(chuàng)建一個(gè)Hello, Android Community App中運(yùn)行您的項(xiàng)目:

  1. 導(dǎo)航到工具|設(shè)備管理器。一旦設(shè)備管理器準(zhǔn)備好了,你有兩個(gè)選擇:
    虛擬或物理。虛擬意味著你將使用模擬器,而物理意味著你將啟用Android手機(jī)來調(diào)試Android應(yīng)用程序。
    出于我們的目的,我們將選擇Virtual。

  2. 單擊Create device,將彈出Virtual device Configuration界面。

  3. 選擇手機(jī)。你會注意到Android Studio還有其他類別,如電視、Wear OS、平板電腦和汽車。
    讓我們現(xiàn)在使用Phone,在未來的章節(jié)中,我們將嘗試使用Wear OS。單擊Next。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

  1. 您將看到推薦系統(tǒng)映像的列表。
    您可以選擇任何選項(xiàng)或使用默認(rèn)選項(xiàng),在Android 12的情況下為S,盡管您可能希望使用最新的API 33,然后單擊Next。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

  1. 現(xiàn)在您將到達(dá)Android虛擬設(shè)備(AVD)屏幕,在這里您可以命名您的虛擬設(shè)備。
    你可以輸入一個(gè)名稱,也可以保留默認(rèn)值Pixel 2 API 31,然后點(diǎn)擊Finish。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

  1. 通過運(yùn)行虛擬設(shè)備來測試它,并確保它按預(yù)期工作。你應(yīng)該看到一些東西在模擬器上運(yùn)行應(yīng)用程序后,類似于下圖。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

??4.3 如何工作

測試和確保應(yīng)用程序顯示預(yù)期的結(jié)果非常重要。
這就是為什么Android Studio使用模擬器來幫助開發(fā)人員確保他們的應(yīng)用程序可以在標(biāo)準(zhǔn)設(shè)備上運(yùn)行。
此外,Android手機(jī)還提供了可供開發(fā)者使用的開發(fā)者選項(xiàng),這使得Android支持的不同設(shè)備數(shù)量變得更加容易,也有助于重現(xiàn)模擬器中難以發(fā)現(xiàn)的漏洞。

??5. 在Jetpack Compose中創(chuàng)建一個(gè)按鈕

我們必須注意,我們不能在一個(gè)指南中涵蓋所有的觀點(diǎn);我們有一章專門介紹更多關(guān)于Jetpack Compose的知識,所以在我們創(chuàng)建的項(xiàng)目中,我們將嘗試為我們的項(xiàng)目創(chuàng)建兩個(gè)額外的視圖。

??5.1 準(zhǔn)備

打開Android Community項(xiàng)目,因?yàn)檫@是我們將在此配方中構(gòu)建的項(xiàng)目。

??5.2 如何實(shí)現(xiàn)

讓我們從在Compose中實(shí)現(xiàn)一個(gè)簡單的按鈕開始:

  1. 讓我們繼續(xù)組織代碼,并通過添加Column()來組織視圖,將文本對齊到中心。這應(yīng)該添加到setContent{}函數(shù)中:
Column(
    modifier = Modifier
        .fillMaxSize()
        .wrapContentSize(Alignment.Center),
    horizontalAlignment = Alignment.CenterHorizontally
) {
    Greeting("Android")
}
  1. 現(xiàn)在,創(chuàng)建一個(gè)函數(shù)并將其命名為SampleButton;在本例中我們將不傳遞任何信息。
    然而,我們將有一個(gè)RowScope{},它定義了在本例中適用于我們的按鈕的修飾符函數(shù),并且我們將給我們的按鈕一個(gè)名稱:click me。

  2. 在Compose中,當(dāng)您創(chuàng)建一個(gè)按鈕時(shí),您可以設(shè)置它的形狀、圖標(biāo)和標(biāo)高,檢查它是否啟用,檢查它的內(nèi)容,等等。
    你可以通過命令單擊button()組件來檢查如何自定義按鈕:

@Composable
fun SampleButton() {
    Button(
        onClick = { /*Do nothing*/ },
        modifier = Modifier
            .fillMaxWidth()
            .padding(24.dp),
        shape = RoundedCornerShape(20.dp),
        border = BorderStroke(2.dp, Color.Blue),
        colors = ButtonDefaults.buttonColors(
            contentColor = Color.Gray,
            containerColor = Color.White
        )
    ) {
        Text(
            text = stringResource(id = R.string.click_me),
            fontSize = 14.sp,
            modifier = Modifier.padding(horizontal = 30.dp, vertical = 6.dp)
        )
    }
}

在我們的SampleButton中,onClick不做任何事情;我們的按鈕有一個(gè)最大填充寬度的修改器,填充為24個(gè)與密度無關(guān)的像素(dp),圓角半徑為20 dp。

我們還設(shè)置了按鈕的顏色,并添加了點(diǎn)擊我作為文本。
我們將字體大小設(shè)置為14個(gè)與比例無關(guān)的像素(sp),因?yàn)檫@有助于確保文本能夠很好地根據(jù)屏幕和用戶的偏好進(jìn)行調(diào)整。

  1. 此外,單擊右上方的Split以預(yù)覽屏幕元素,或者單擊Design部分以查看不含代碼的整個(gè)屏幕。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

  1. 最后,讓我們調(diào)用SampleButton函數(shù),也就是Greeting函數(shù)所在的地方,然后運(yùn)行應(yīng)用程序:
Column(
    modifier = Modifier
        .fillMaxSize()
        .wrapContentSize(Alignment.Center),
    horizontalAlignment = Alignment.CenterHorizontally
) {
    Greeting("Android")
    SampleButton()
}
  1. 編譯并運(yùn)行程序,您的應(yīng)用程序應(yīng)該如下圖所示。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

??5.3 如何工作

一個(gè)可組合的應(yīng)用包含幾個(gè)可組合的函數(shù),只是普通的帶@Composable注解的函數(shù)。
正如Google文檔所解釋的那樣,注釋告訴Compose向過程添加特殊支持,以便隨著時(shí)間的推移更新和維護(hù)UI。
Compose還允許您將代碼結(jié)構(gòu)成可維護(hù)的小塊,以便隨時(shí)調(diào)整和重用。

??5.4 參考

由于很難在一個(gè)指南中涵蓋所有視圖,我們將在第2章中討論更多視圖,探索最佳實(shí)踐,并測試我們的可組合視圖。

??6. 使用gradlew命令在Android Studio中清理和運(yùn)行您的項(xiàng)目

gradlew命令是一個(gè)健壯的Gradle包裝器,有很好的用途。然而,在Android Studio中,您不需要安裝它,因?yàn)樗且粋€(gè)打包在項(xiàng)目中的腳本。

??6.1 準(zhǔn)備

但是現(xiàn)在,我們不會研究所有的Gradle命令,而是使用最流行的命令來清理、構(gòu)建、提供信息、調(diào)試和掃描我們的項(xiàng)目,以便在運(yùn)行應(yīng)用程序時(shí)發(fā)現(xiàn)任何問題。
你可以在筆記本電腦的終端上運(yùn)行這些命令,只要你在正確的目錄下,或者使用Android Studio提供的終端。

??6.2 如何實(shí)現(xiàn)

按照以下步驟檢查并確認(rèn)Gradle是否按預(yù)期工作:

  1. 你可以通過運(yùn)行./gradlew來檢查版本。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

  1. 要構(gòu)建和清理項(xiàng)目,可以運(yùn)行/gradlew clean和/gradlew build命令。
    如果您的項(xiàng)目有任何錯(cuò)誤,構(gòu)建將失敗,您可以調(diào)查錯(cuò)誤。
    此外,在Android中,你總是可以不使用Gradle命令運(yùn)行你的項(xiàng)目,只使用IDE運(yùn)行和清理選項(xiàng)。

  2. 下面是一些更有用的gradlew命令;例如,當(dāng)你的構(gòu)建失敗時(shí),你想知道是什么出了問題,使用命令來調(diào)查或點(diǎn)擊錯(cuò)誤消息(參見下圖):

  • 使用–stacktrace選項(xiàng)運(yùn)行以獲取堆棧跟蹤信息
  • 使用–info或–debug選項(xiàng)運(yùn)行可以獲得更多的日志輸出
  • 運(yùn)行–scan以獲得完整的見解
??6.3 如何工作

Gradle是一個(gè)通用的構(gòu)建工具,在Android開發(fā)中非常強(qiáng)大。
此外,您還可以創(chuàng)建和發(fā)布自定義插件來封裝約定和構(gòu)建功能。
Gradle的優(yōu)點(diǎn)包括用于測試執(zhí)行、編譯和在構(gòu)建系統(tǒng)中發(fā)生的任何其他任務(wù)的增量構(gòu)建工作。

??7. 了解Android項(xiàng)目結(jié)構(gòu)

如果這是您第一次查看Android項(xiàng)目文件夾,您可能想知道在哪里添加代碼以及這些包的含義。
本指南將介紹每個(gè)文件夾中包含的內(nèi)容以及代碼的位置。

??7.1 準(zhǔn)備

如果您打開您的項(xiàng)目,您將注意到許多文件夾。你的Android項(xiàng)目的主要文件夾列在這里:

  • 清單文件夾
  • java文件夾 (test/androidTest)
  • 資源文件夾
  • Gradle腳本
??7.2 如何實(shí)現(xiàn)

讓我們?yōu)g覽每個(gè)文件夾,了解存儲的內(nèi)容、位置和原因:

  1. 在下圖中,您可以看到Packages下拉框;點(diǎn)擊它,就會彈出一個(gè)包含項(xiàng)目、包、項(xiàng)目文件等內(nèi)容的窗口。

  2. 您可以選擇使用Android徽標(biāo),通過project或下拉菜單旁邊的project高亮部分查看您的項(xiàng)目。
    當(dāng)應(yīng)用程序中有許多模塊并希望添加特定代碼時(shí),Project視圖是最佳選擇。
    請隨意點(diǎn)擊各個(gè)部分,看看它們都有什么。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

  1. manifest文件夾是Android應(yīng)用程序的真實(shí)來源;它包含AndroidManifest.xml。
    點(diǎn)擊文件內(nèi)部,你會注意到你有一個(gè)意圖啟動器,在你的模擬器上啟動Android應(yīng)用程序。

  2. 此外,版本號通常是在Gradle中設(shè)置的,然后合并到manifest中,我們在manifest中添加所有需要的權(quán)限。
    您還會注意到包的名稱、元數(shù)據(jù)、數(shù)據(jù)提取規(guī)則、主題和圖標(biāo);如果你有一個(gè)獨(dú)特的圖標(biāo),你可以在這里添加一個(gè)。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

  1. java文件夾包含我們在構(gòu)建Android應(yīng)用程序時(shí)創(chuàng)建的所有Kotlin (.kt)和java (.java)文件。
    例如,在下圖中,我們有一個(gè)包含(androidTest)和(test)的包,這是我們添加測試的地方。
    點(diǎn)擊所有文件夾,看看里面都有什么。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

  1. 在androidTest文件夾中,我們編寫UI測試來測試UI功能,在test文件夾中,我們編寫單元測試。
    單元測試測試代碼的一小部分,以確保所需的行為符合預(yù)期。
    測試驅(qū)動開發(fā)(TDD)在應(yīng)用程序開發(fā)過程中非常出色且有價(jià)值。
    有些公司遵守這一規(guī)定,但有些公司不執(zhí)行這一規(guī)定。
    然而,這是一項(xiàng)很好的技能,因?yàn)槭冀K測試代碼是一種很好的實(shí)踐。

res文件夾包含XML布局、UI字符串、可繪制圖像和Mipmap圖標(biāo)。
另一方面,values文件夾包含許多有用的XML文件,如尺寸、顏色和主題。
繼續(xù),點(diǎn)擊res文件夾來熟悉那里有什么,因?yàn)槲覀儗⒃谙乱徽轮惺褂盟?/p>

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

  1. 最后,在Gradle Scripts中,您將看到定義我們可以在模塊中應(yīng)用的構(gòu)建配置的文件。
    例如,在構(gòu)建中。gradle(Project: AndroidCommunity),你會看到一個(gè)頂層文件,你可以在其中添加所有子項(xiàng)目模塊通用的配置選項(xiàng)。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

??7.3 如何工作

在Android Studio中,對于第一次使用的用戶來說,不知道文件放在哪里以及什么是必需的可能會讓他們不知所措。
因此,有一個(gè)循序漸進(jìn)的指南,在哪里添加測試或代碼,并了解Android項(xiàng)目結(jié)構(gòu)是至關(guān)重要的。
此外,在復(fù)雜的項(xiàng)目中,您可能會發(fā)現(xiàn)不同的模塊;因此,了解項(xiàng)目結(jié)構(gòu)是有幫助的。
Android Studio中的模塊是源文件和構(gòu)建設(shè)置的集合,允許您將項(xiàng)目劃分為具有特定目的的不同實(shí)體。

??8. 在Android Studio中調(diào)試和登錄

調(diào)試和日志記錄在Android開發(fā)中是至關(guān)重要的,您可以編寫出現(xiàn)在Logcat中的日志消息,以幫助您發(fā)現(xiàn)代碼中的問題,或者在應(yīng)該執(zhí)行的時(shí)候驗(yàn)證一段代碼。

我們將在這里介紹這個(gè)話題,但說我們將在一個(gè)指南中涵蓋所有內(nèi)容是不公平的

??8.1 準(zhǔn)備

讓我們用一個(gè)例子來理解日志。以下日志方法按優(yōu)先級從高到低排列。
當(dāng)記錄網(wǎng)絡(luò)錯(cuò)誤、成功調(diào)用和其他錯(cuò)誤時(shí),它們是正確的:

  • Log.e(): 錯(cuò)誤
  • Log.w(): 警告
  • Log.i(): 信息
  • Log.d(): 調(diào)試向開發(fā)人員顯示關(guān)鍵消息,這是最常用的日志
  • Log.v(): 冗長的

一個(gè)好的做法是將每個(gè)日志與一個(gè)TAG關(guān)聯(lián)起來,以便在Logcat中快速識別錯(cuò)誤消息。
"TAG"指的是一個(gè)文本標(biāo)簽,可以分配給Android應(yīng)用程序中的視圖或其他UI元素。
在Android中使用標(biāo)簽的主要目的是提供一種將附加信息或元數(shù)據(jù)與UI元素相關(guān)聯(lián)的方法。

??8.2 如何實(shí)現(xiàn)

讓我們繼續(xù)在我們的小項(xiàng)目中添加一個(gè)日志消息:

  1. 我們將繼續(xù)創(chuàng)建一個(gè)調(diào)試日志,然后運(yùn)行應(yīng)用程序:
Log.d(TAG, "asdf Testing call")

在Logcat部分的搜索框中,輸入asdf,看看是否可以找到該消息。

【Android 從入門到出門】第一章:Android開發(fā)技能入門指南,Android 從入門到出門,android,kotlin

您將注意到日志有一個(gè)類名、我們的TAG (MainActivity)和顯示的日志消息;如下圖中的右箭頭所示。

  1. 左箭頭顯示了提到的日志類型,使用下拉菜單,您可以根據(jù)規(guī)范快速查看您的消息。
??8.3 如何工作

調(diào)試是指在類中設(shè)置斷點(diǎn),降低模擬器的速度,并嘗試在代碼中找到問題。
例如,如果您在代碼中遇到競爭條件,或者您的代碼在某些設(shè)備上工作而在其他設(shè)備上不起作用,則調(diào)試功能非常強(qiáng)大。

此外,為了利用調(diào)試,您需要首先將調(diào)試器附加到模擬器,然后在Debug模式下運(yùn)行。
另一方面,日志記錄可以幫助您記錄在遇到問題時(shí)可能對您有幫助的信息。
有時(shí),調(diào)試可能很有挑戰(zhàn)性,但是在代碼中需要的地方放置日志可能非常有幫助。

一個(gè)實(shí)際的例子是當(dāng)你從API加載數(shù)據(jù)時(shí);當(dāng)出現(xiàn)網(wǎng)絡(luò)錯(cuò)誤時(shí),您可能希望將其記錄下來,以便通知您如果網(wǎng)絡(luò)調(diào)用失敗會發(fā)生什么。
因此,使用斷點(diǎn)進(jìn)行調(diào)試可能有助于在評估值時(shí)減慢過程,并且由于我們在本章中沒有構(gòu)建很多內(nèi)容,我們可以在后面的章節(jié)中以不同的方法重新討論這個(gè)主題。

??8.4 參考

Timber是一個(gè)日志記錄器,帶有一個(gè)小的、可擴(kuò)展的API,它在Android的標(biāo)準(zhǔn)Log類之上提供實(shí)用程序,許多開發(fā)人員使用它進(jìn)行日志記錄。
有關(guān)Timber的更多信息,請參見:https://github.com/JakeWharton/timber.

?? 交友小貼士:

博主Github,Gitee同名賬號,F(xiàn)ollow 一下就可以一起愉快的玩耍了,更多精彩文章請持續(xù)關(guān)注。


專欄推薦文章來源地址http://www.zghlxwxcb.cn/news/detail-740605.html

Android 從入門到出門
第一章:Android開發(fā)技能入門指南
第二章:使用聲明式UI創(chuàng)建屏幕并探索組合原則
第三章:使用Hilt處理Jetpack Compose UI狀態(tài)
第四章:現(xiàn)代Android開發(fā)中的導(dǎo)航
第五章:使用DataStore存儲數(shù)據(jù)和測試
第六章:使用Room數(shù)據(jù)庫并測試
第七章:開始使用WorkManager
第八章:分頁入門指南

到了這里,關(guān)于【Android 從入門到出門】第一章:Android開發(fā)技能入門指南的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 文章一:SVN入門指南 - 版本控制新手的第一步

    概述:在本篇文章中,我們將介紹版本控制的基本概念和SVN的基礎(chǔ)知識。從安裝和配置SVN開始,逐步學(xué)習(xí)倉庫創(chuàng)建、提交、更新等基本操作,讓您快速入門SVN版本控制。 1. 引言 在軟件開發(fā)過程中,版本控制是必不可少的工具。它允許開發(fā)團(tuán)隊(duì)對代碼進(jìn)行有效管理,記錄代碼

    2024年02月13日
    瀏覽(30)
  • 【三十天精通 Vue 3】 第一天 Vue 3入門指南

    【三十天精通 Vue 3】 第一天 Vue 3入門指南

    ?創(chuàng)作者:陳書予 ??個(gè)人主頁:陳書予的個(gè)人主頁 ??陳書予的個(gè)人社區(qū),歡迎你的加入: 陳書予的社區(qū) ??專欄地址: 三十天精通 Vue 3

    2024年02月11日
    瀏覽(24)
  • ElasticSearch第一章(入門介紹)

    ElasticSearch第一章(入門介紹)

    ElasticSearch(彈性搜索),簡稱ES。 ES是一個(gè)分布式,RESTFul風(fēng)格的搜索和數(shù)據(jù)分析引擎 ,能夠解決不斷涌現(xiàn)出的各種用例。作為 Elastic Stack(Elastic技術(shù)棧簡稱ELK) 的核心,Elasticsearch 會集中存儲您的數(shù)據(jù),讓您飛快完成搜索,微調(diào)相關(guān)性,進(jìn)行強(qiáng)大的分析,并輕松縮放規(guī)模。 我

    2024年02月22日
    瀏覽(25)
  • 第一章 MATLAB入門

    MATLAB(矩陣實(shí)驗(yàn)室的簡稱)是一種專業(yè)的計(jì)算機(jī)程序,用于工程科學(xué)的矩陣數(shù)學(xué)運(yùn)算。但 在以后的幾年內(nèi),它逐漸發(fā)展為一種極其靈活的計(jì)算體系,用于解決各種重要的技術(shù)問題。 Matlab程序執(zhí)行MATLAB語言,并提供了一個(gè)極其廣泛的預(yù)定義函數(shù)庫,這樣就使得技術(shù)工作 變得簡

    2024年02月05日
    瀏覽(19)
  • 第一章 快速入門

    TypeScript是JavaScript的超集。 它對JS進(jìn)行了擴(kuò)展,向JS中引入了類型的概念,并添加了許多新的特性。 TS代碼需要通過編譯器編譯為JS,然后再交由JS解析器執(zhí)行。 TS完全兼容JS,換言之,任何的JS代碼都可以直接當(dāng)成JS使用。 相較于JS而言,TS擁有了靜態(tài)類型,更加嚴(yán)格的語法,更

    2024年02月01日
    瀏覽(21)
  • 第一章:SpringBoot基礎(chǔ)入門

    第一章:SpringBoot基礎(chǔ)入門

    Spring 能做什么 Spring 的能力 Spring 的生態(tài) 網(wǎng)址: https://spring.io/projects/spring-boot 覆蓋了: Web 開發(fā)、數(shù)據(jù)訪問、安全控制、分布式、消息服務(wù)、移動開發(fā)、批處理等。 Spring5 重大升級 響應(yīng)式編程 內(nèi)部源碼設(shè)計(jì) 基于 Java8 的一些新特性。 為什么用 SpringBoot ? Spring Boot makes it eas

    2024年02月12日
    瀏覽(28)
  • 第一章 小程序入門

    第一章 小程序入門

    小程序的基本結(jié)構(gòu) 小程序的頁面組成部分 JSON 配置文件的作用 app.json 配置文件 project.config.json 配置文件 sitemap.json 配置文件 頁面 .json 配置文件 什么是 wxml wxml 和 html 的區(qū)別 什么是 wxss wxss 和 css 的區(qū)別 通信模型 小程序的啟動過程 頁面渲染過程 button 按鈕的基本使用 img 組件

    2024年02月08日
    瀏覽(28)
  • ChatGPT入門到高級【第一章】

    第一章:Chatgpt的起源和發(fā)展 1.1 人工智能和Chatbot的概念 1.2 Chatbot的歷史發(fā)展 1.3 機(jī)器學(xué)習(xí)技術(shù)在Chatbot中的應(yīng)用 1.4 Chatgpt的誕生和發(fā)展 第二章:Chatgpt的技術(shù)原理 2.1 自然語言處理技術(shù) 2.2 深度學(xué)習(xí)技術(shù) 2.3 Transformer模型 2.4 GPT模型 第三章:Chatgpt的應(yīng)用場景 3.1 智能客服 3.2 智能問

    2024年02月04日
    瀏覽(20)
  • 第一章 Web自動化入門

    第一章 Web自動化入門

    1、概念 由機(jī)器設(shè)備代替人工自動完成指定目標(biāo)的過程 2、優(yōu)點(diǎn) 減少人工勞動力 提高工作效率 產(chǎn)品規(guī)格統(tǒng)一標(biāo)準(zhǔn) 規(guī)格化(批量生產(chǎn)) 概念:讓程序代替人工去驗(yàn)證系統(tǒng)功能的過程 解決-回歸測試(重點(diǎn)) 解決-壓力測試 解決-兼容性測試(瀏覽器、分辨率、操作系統(tǒng)) 提高測

    2024年02月07日
    瀏覽(22)
  • 【Matlab入門】 第一章 Matlab基礎(chǔ)

    【Matlab入門】 第一章 Matlab基礎(chǔ)

    你好!歡迎查看此系列筆記。為何說是筆記而不是教程呢,是因?yàn)檫@就是真真切切的我自己學(xué)習(xí)的記錄,從R2022a版本到R2024a,這意味著該系列筆記可能會一直更新下去,倘若有重大更迭,我也會及時(shí)更新。觀看者遇到問題,可以在評論區(qū)反饋,我爭取及時(shí)交流修改。初始筆記

    2024年02月20日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包