Android第一行代码–学习笔记(更新中ing)

O(∩_∩)O–作者 说:
请原谅我无耻的称自己为作者了!本文是作者看《Android第一行代码》然后自己摘抄书上觉得对自己目前有用的内容,目前作者也是刚刚入门学习阶段,如果有错误希望大家多多指正。
PS:为什么我会写这几句没用的东西(因为昨天写的笔记突然好多人看。。。 我慌了)只是 分享看书而已!
最后,文章尽量 日更,每次更新一点今天新学的东西,大家一起加油

⭐️活动Activity

⭐️服务Service

⭐️广播接收器Broadcast Receiver

⭐️内容提供器Content Provider

简述:1.程序中定义的所有四大组件,都需要在这个文件里注册

        2.给应用程序添加权限声明

其中:

<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
这两行代码所在Activity,表示此Activity是主活动,点开本程序的入口
buildscript {
    repositories {
        jcenter()    //代码托管仓库
    }
    dependencies {
        classpath "com.android.tools.build:gradle:7.0.2"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.31"
        //声明gradle插件
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
allprojects {
    repositories {
        jcenter()
    }
}
plugins {
    id 'com.android.application'  //&#x8FD9;&#x662F;&#x4E00;&#x4E2A;&#x5E94;&#x7528;&#x7A0B;&#x5E8F;&#x6A21;&#x5757;
    id 'com.android.library'  //&#x8FD9;&#x662F;&#x4E00;&#x4E2A;&#x5E93;&#x6A21;&#x5757;
}

android {
    compileSdk 31  //&#x6307;&#x5B9A;&#x9879;&#x76EE;&#x7684;&#x7F16;&#x8BD1;&#x7248;&#x672C;

    defaultConfig {
        applicationId "com.co.test"  //&#x6307;&#x5B9A;&#x9879;&#x76EE;&#x5305;&#x540D;
        minSdk 26  //&#x6307;&#x5B9A;&#x9879;&#x76EE;&#x6700;&#x4F4E;&#x517C;&#x5BB9;Android&#x7CFB;&#x7EDF;&#x7248;&#x672C;
        targetSdk 31  //&#x8FD0;&#x884C;&#x65F6;&#x6743;&#x9650;
        versionCode 1  //&#x9879;&#x76EE;&#x7248;&#x672C;&#x53F7;
        versionName "1.0"  //&#x9879;&#x76EE;&#x7248;&#x672C;&#x540D;
    }

    buildTypes {  //&#x7528;&#x4E8E;&#x6307;&#x5B9A;&#x5B89;&#x88C5;&#x6587;&#x4EF6;&#x7684;&#x76F8;&#x5173;&#x914D;&#x7F6E;
        release {  //&#x6B63;&#x5F0F;
            minifyEnabled false  //&#x662F;&#x5426;&#x5BF9;&#x9879;&#x76EE;&#x4EE3;&#x7801;&#x8FDB;&#x884C;&#x6DF7;&#x6DC6;
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'  //&#x6307;&#x5B9A;&#x6DF7;&#x6DC6;&#x65F6;&#x4F7F;&#x7528;&#x7684;&#x89C4;&#x5219;&#x6587;&#x4EF6;
        }
        debug {  //&#x6D4B;&#x8BD5;
            minifyEnabled false
        }
    }

dependencies {  //&#x6307;&#x5B9A;&#x9879;&#x76EE;&#x6240;&#x6709;&#x7684;&#x4F9D;&#x8D56;&#x5173;&#x7CFB;  1.&#x672C;&#x5730;&#x4F9D;&#x8D56; 2.&#x5E93;&#x4F9D;&#x8D56; 3.&#x8FDC;&#x7A0B;&#x4F9D;&#x8D56;
      //&#x9700;&#x8981;&#x5565;&#x7528;&#x5565;&#x5C31;&#x662F;&#x4E86;&#x3002;&#x3002;&#x3002;
}

⭐️Log.v():用于打印琐碎,意义最小的日志信息

⭐️Log.d():用于打印一些调试信息

⭐️Log.i():用于打印一些比较重要的数据

⭐️Log.w():用于打印一些警告信息

⭐️Log.e():用于打印程序中的错误信息

🗡最基础方法

setContentView(R.Layout.home_layout)

核心:用于组件交互,包括当前组件想执行的动作和组件之间传递数据

🗡需求:启动目标活动

思路:Activity类提供了一个startActivity()方法,用于启动活动。此方法接收一个Intent参数,将构建好的Intent传入startActivity()方法即可。

Intent intent = new Intent(FirstActivity.this,SecondActivity.class)
startActivity(intent);

🗡需求:启动目标活动

思路:大体同显式,但需要在AndroidMainfest文件中配置action和category标签

<action android:name="com.example.activitytest.ACTION_START" />
<category android:name="android.intent.category.DEFAULT" />

Intent intent = new Intent(com.example.activitytest.ACTION_START)
startActivity(intent);

🗡最简单的传递方式

Intent intent = new Intent(FirstActivity.this,SecondActivity.class);
intent.putExtra("键值",数据);
startActivity(intent);

🗡返回数据给上一个活动

思路:Activity中的startActivityForResult()方法也是用于启动活动的,这个方法期望在活动销毁的时候能够返回一个结果给上一个活动。

[注意]:startActivityForResult()方法接收两个参数,第一个参数还是Intent,第二个参数是请求码,用于在之后的回调中判断数据的来源。

Intent intent = new Intent(FirstActivity.this,SecondActivity.class);
startActivityForResult(intent,1);
Intent intent = new Intent();
intent.putExtra("data_return","hello one");
setResult(RESULT_OK,intent);
finish();

在第一个activity中接收

@Override
protected void onActivityResult(int requestCode,int resultCode,Intent data){

    switch(requestCode){

        case 1:
            if(resultCode == RESULT_OK) {

                String returnedData = data.getStringExtra("data_return");
                Log.d("FirstActivity",returnedData);
            }
            break;
        default:
    }
}
private void replaceFragment(Fragment fragment){

    FragmentManager fragmentManager = getSupportFragmentMannager<

Original: https://blog.csdn.net/m0_56396386/article/details/120836841
Author: 电烤牛上脑
Title: Android第一行代码–学习笔记(更新中ing)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/816302/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球