摆烂期的Android学习笔记一

Android大致分为四层架构1、Linux内核层:提供各种硬件驱动,如显示驱动,音频驱动,相机驱 动,蓝牙驱动。。。。 2、系统运行库层:通过C/c++库为android地图提供支持 3、应用框架层:提供构建应用程序时肯用到的各种API (应用程序编程接口),自带的一些核心 应用就是使用这些API完成的 4、应用层:所有安装在手机上的应用程序都是这一层的,如:自带的联 系人等,或者你开发的程序   四大组件: 活动:凡是在应用中可见的部分都是放在活动中的 服务:不直接可视,一直在后台默默运行,即使用户退出了应用,服务仍是可以继续运行的 广播接收器:允许你的应用接收来自各处的广播,如电话、短信等,也可以向外发出 内容提供器:为程序之间共享数据提供了可能,比如读取电话簿中的联系人   有控件系统轻松编写漂亮的界面,也可以定制属于自己的控件   android系统还自带SQLite这种嵌入式关系型数据库   as需要加载gradle,国内需要换源到阿里源(改build.gradle文件)
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
       // google()
        //jcenter()
        maven{ url 'https://maven.aliyun.com/repository/google'}
        maven{ url 'https://maven.aliyun.com/repository/gradle-plugin'}
    }
    dependencies {
        classpath "com.android.tools.build:gradle:4.1.2"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        //google()
        //jcenter()
        maven{ url 'https://maven.aliyun.com/repository/google'}
        maven{ url 'https://maven.aliyun.com/repository/gradle-plugin'}
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

 

local.properties 这个文件用于指定本机中的Android SDK路径,通常内容都是自动生成的,我们并不需要修改。除非你本机中的Android SDK位置发生了变化,那么就将这个文件中的路径改成新的位置即可。   java java目录是放置我们所有Java代码的地方,展开该目录,刚才创建的HelloWorldActivity文件就在里面。   res 简单点说,就是你在项目中使用到的所有图片、布局、字符串等资源都要存放在这个目录下。当然这个目录下还有很多子目录,图片放在drawable目录下,布局放在layout目录下,字符串放在values目录下,所以不用担心会把整个res 目录弄得乱糟糟的。   AndroidManifest.xml 这是你整个Android项目的配置文件,你在程序中定义的所有四大组件都需要在这个文件里注册,另外还可以在这个文件中给应用程序添加权限声明。这个文件以后会经常用到   归纳一下res目录。所有以 drawable开头的文件夹都是用来放图片的,所有以mipmap开头的文件夹都是用来放应用图标的,所有以values开头的文件夹都是用来放字符串、样式、颜色等配置的,layout文件夹是用来放布局文件的。     摆烂期的Android学习笔记一

 

//**日志工具 Android中的日志工具类是 Log ( android.util.Log ),这个类中提供了如下5个方法来供我们打印日志。 Log.v()。用于打印那些最为琐碎的、意义最小的日志信息。对应级别verbose,是Android日志里面级别最低的一种。 Log.d()。用于打印一些调试信息,这些信息对你调试程序和分析问题应该是有帮助的。对应级别debug,比 verbose高一级。 Log.i()。用于打印一些比较重要的数据,这些数据应该是你非常想看到的、可以帮你分析用户行为数据。对应级别info,比 debug高一级。 Log.w()。用于打印一些警告信息,提示程序在这个地方可能会有潜在的风险,最好去修复一下这些出现警告的地方。对应级别warn,比 info高一级。 Log.e()。用于打印程序中的错误信息,比如程序进入到了catch语句当中。当有错误信息打印出来的时候,一般都代表你的程序出现严重问题了,必须尽快修复。对应级别error,比 warn高一级。 其实很简单,一共就5个方法,当然每个方法还会有不同的重载,但那对你来说肯定不是什么难理解的地方了。我们现在就在HelloWorld项目中试一试日志工具好不好用吧。 打开HelloWorldActivity,在 onCreate()方法中添加一行打印日志的语句,如下所示:protected void oncreate(Bundle savedInstancestate) { super.onCreate( savedInstanceState) ; setcontentView (R. layout.hello_world_layout) ; Log.d ( "HelloworldActivity". "onCreate execute""); Log.d()方法中传入了两个参数:第一个参数是 tag,一般传人当前的类名就好,主要用于对打印信息进行过滤;第二个参数是msg,即想要打印的具体的内容。 现在可以重新运行一下 HelloWorld这个项目了,点击顶部工具栏上的运行按钮,或者使用快捷键 Shift + F10 (Mac系统是control + R ),等程序运行完毕,点击Android Studio底部工具栏的Android Monitor,在 logcat中就可以看到打印信息了,如图1.31所示。 **//   技巧:参数,每次写一遍显然太过麻烦。这里还有一个小技巧,我们在onCreate()方法的外面输入logt然后按下Tab键,这时就会以当前的类名作为值自动生成一个TAG常量,如下所示: public class HelloworldActivity extends AppCompatActivity { private static final string TAG = "HelloworldActivity"; } 解决double精度的问题: 摆烂期的Android学习笔记一

 


 

上一篇:关于在AndroidStudio项目下运行main函数报错的解决方案


下一篇:Unity基于Android Studio调用Android方法