iT邦幫忙

2025 iThome 鐵人賽

DAY 8
0

Android Studio 是整合的開發環境又稱IDE,如果熟悉Android Studio 專案結構會對之後分析有幫助
這邊就不介紹怎麼建立專案之類,有興趣應該可以在網路上找到更好的教學

建好一個空的專案大概會長的像成這樣
https://ithelp.ithome.com.tw/upload/images/20250917/20149459HjlVVgDQVX.png

Gradle Script
build.gradle 這的檔案會定義依賴,與專案或模組的build起來的設定,與ProGuard 是否啟用(對程式碼優化與混淆
proguard-reules.pro 可以在對ProGuard在做客製化設定
https://ithelp.ithome.com.tw/upload/images/20250917/20149459llMHJQImHa.png

Application 類型

根據不同的技術使用 應用程式可以區分成不同3個基本類型
分別是 Native apps, Web apps, Hybridapps

Native Apps

Native APP 主要由Kotlin or java去寫 使用原生的功能 直接存取Android平台的features 和 systems API

透過建好專案 我會講一下 APP layout 是怎麼建立 他是怎麼與Java Code 和 Resource 互相配合使用
Layout 基本會放在 app/res/layout 下的activity_main.xml
https://ithelp.ithome.com.tw/upload/images/20250917/20149459vnwh7CSYWZ.png

activity_main.xml 基本上會有Text 或 button 的物件 這邊我們可以去觀察物件中的屬性
/res/values/string.xml

  <TextView
        android:id="@+id/message"
        android:layout_width="380dp"
        android:layout_height="31dp"
        android:text="@string/message"

tools:context 定義使用這個layout的 Activity
android:id 該物件唯一標示符 方便在java code 中使用 其中@+id 表示新的Resource, @id 表示該資源已存在
android:text 可裡是設定物件字串 者裡可以是直接hard code 或是透過 res/values/string.xml 預先定義像用變數方式使用 例如 android:text="@string/message"
res/values/strings.xml

<resources>
    <string name="app_name">My Application</string>
    <string name="message">Hello World!</string>
</resources>

定義好res 這裡的東西時 我們可以透過 R class 來使用在/res 下 的有id 的 object 透過這些UID 就能夠使用

MainActivity.java

protected void onCreate(Bundle savedInstanceState){
    
    ...
    setContentView(R.layout.activity_main)
    message = (TextView)findViewById(R.id.message)
    button = (Button)findViewById(R.id.button);
    ...
    }

onCreate 這個function 會在 Activiy 起來時被呼叫 他是Activity lifeCycle 第一個階段(之後會再介紹
setContentView()會設定是哪個layout 要用在這個Activity 以及透過R classes 使用剛才被我們定義好的TextView Object


上一篇
DAY 7 APK Structure
系列文
我是不可能一直學Android 絕對不會8
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言