百度
360搜索
搜狗搜索

android简单app实例代码,有没有适合 Android 开发初学者的 App 源码推荐详细介绍

本文目录一览: 如何从零开始写一个Android安卓App?

地球上最流行的移动操作系统,非苹果公司的iOS与谷歌公司的Android系统莫属了,那如何写出自己的第一个App,并且能够跑在iOS与Android系统上呢?
FinClipAndroid研发工程师为大家带来Android篇~如果需要了解iOS也可点击iOS篇。
与开发iOS应用的逻辑基本一致,开发Android应用也需要以下5步:
开发工具安装和配置搭建开发环境在AndroidStudio中,创建第一个项目完成简单Helloworld代码编写编译APK文件,让应用在手机上跑起来0X00开发工具安装和配置第一步,需要先在Android官网下载AndroidStudio(直接点击传送门进入下载链接),如果不会科学上网的话,也可以在国内镜像下载。
但想成为专业的安卓研发,还是要学会科学上网同意协议后选择自己的机型在这里可以根据你的电脑型号(浏览器会自动根据机型推荐链接,比如我的就是Intel芯片的MacBook)下载安装包,在下载完成后双击跟着提示一步一步完成安装就行了。
0X01搭建开发环境与Xcode不同,我们还需要在正式编写Android应用前,配置本地的开发环境。
第一步,安装JDK8
首先需要安装JDK8,JDK就是研发Android应用的官方环境,点击这里下载(我的链接也是适用于Mac电脑,如果你的电脑不一样需要切换一下)。
在第二个箭头处,可以切换不同的操作系统下载完成后,双击下载好的jdk-8u311-macosx-x64.dmg,单击接受许可协议后,在新出现的“安装类型窗口”中,点击“安装”。
此时会出现一个窗口,显示“安装程序正在尝试安装新软件。输入您的密码以允许此操作”。
所以我们需要再输入管理员密码之后,再次点击“安装软件”。等到显示确认窗口之后,即可完成安装。
第二步,配置JDK环境
在第一步中,我们只是把JDK1.8的文件复制到操作系统上。但还需要让其他应用知道JDK1.8环境存在的具体位置,因此我们还需要配置系统的环境变量。
但首先,我们自己得先知道JDK目录安装在哪里,按照下面的路径我们可以找到JDK的主目录,如下图所示:
JDK安装目录/Library/Java/JavaVirtualMachines也就是说,JDK的真实目录在这里/Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home,
既然知道了JDK的安装目录,那就让我们打开终端(同时按住键盘上的command和空格,并在之后的弹框中输入terminal.app后敲击回车)开始配置:
vi~/.zshrcorvi~/.bash_profile在文件的末尾加入这一行语句:
exportJAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home然后用source命令更新环境配置
source~/.zshrcorsource~/.bash_profile配置完毕后,我们就可以验证Java环境配置是否正确了,依然在终端中输入
java-version如果正确显示出了版本号,就代表配置成功了0X02在AndroidStudio中,创建第一个项目打开AndroidStudio,AndroidStudio第一次打开需要下载AndroidSDK和Gradle等工具包,所以第一次打开可能比较慢(合理科学上网会快一些),AndroidStudio准备好后,开始创建第一个项目。
第一步,新建项目
点击界面中的NewProject选择中间的空模板EmptyActivity在这里输入项目信息之后,点击Finish就可以完成项目的创建了。
0X03完成简单Helloworld代码编写首先让我们认识Android应用的项目文件结构:
Android的页面是由一个个Activity组成的,页面主要分为UI布局部分和逻辑处理部分,UI布局部分需要由上图中蓝色main目录下的activity_main.xml文件处理,而逻辑部分则是由com.myname.myapplication中的MainActivity文件处理。
所以我们也需要修改UI布局与逻辑2个文件,首先编辑activity_main.xml:

然后编辑MainActivity:

packagecom.myname.myapplicationimportandroidx.appcompat.app.AppCompatActivityimportandroid.os.Bundleimportandroid.widget.Buttonimportandroid.widget.ToastclassMainActivity:AppCompatActivity(){overridefunonCreate(savedInstanceState:Bundle?){super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)this.findViewById

<button
android:id="@+id/timeBtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/time"
android:textSize="20sp"
/>

<button
android:id="@+id/cancelAlarmBtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/cancelAlarm"
/>

界面的效果如下:
3、修改Alarm.java这个activity,在该Activity中需要做这样几件事:
获取界面上的两个按钮组件,并给其绑定事件监听器
第一个时间按钮,点击后,显示时间选择对话框(TimePicker),供选择小时和分钟,并设置闹钟
第二个按钮,点击之后需要当前设定的闹钟
比较难写的代码就是闹钟设置:
//设置时间
Java代码
timeBtn.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
Log.d(TAG, "click the time button to set time");
calendar.setTimeInMillis(System.currentTimeMillis());
new TimePickerDialog(Alarm.this,new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker arg0, int h, int m) {
//更新按钮上的时间
timeBtn.setText(formatTime(h,m));
//设置日历的时间,主要是让日历的年月日和当前同步
calendar.setTimeInMillis(System.currentTimeMillis());
//设置日历的小时和分钟
calendar.set(Calendar.HOUR_OF_DAY, h);
calendar.set(Calendar.MINUTE, m);
//将秒和毫秒设置为0
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
//建立Intent和PendingIntent来调用闹钟管理器
Intent intent = new Intent(Alarm.this,AlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(Alarm.this, 0, intent, 0);
//获取闹钟管理器
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
//设置闹钟
alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pendingIntent);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 10*1000, pendingIntent);
Toast.makeText(Alarm.this, "设置闹钟的时间为:"+String.valueOf(h)+":"+String.valueOf(m), Toast.LENGTH_SHORT).show();
Log.d(TAG, "set the time to "+formatTime(h,m));
}
},calendar.get(Calendar.HOUR_OF_DAY),calendar.get(Calendar.MINUTE),true).show();
}
});
代码里面有注释,这里就不多解释了,其中new TimePickerDialog为创建时间选择对话框。为了能够看到效果,我给闹钟添加了重复提醒:alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 10*1000, pendingIntent);。
还要为取消闹钟按钮添加事件监听器:
Java代码
//取消闹钟按钮事件监听
final Button cancelAlarmBtn = (Button)findViewById(R.id.cancelAlarmBtn);
cancelAlarmBtn.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
Intent intent = new Intent(Alarm.this,AlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(Alarm.this, 0, intent, 0);
//获取闹钟管理器
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
alarmManager.cancel(pendingIntent);
Toast.makeText(Alarm.this, "闹钟已经取消!", Toast.LENGTH_SHORT).show();
}
});
在点击取消闹钟按钮时,取消之前设置的闹钟,核心代码就4行。
4、编写广播接收器,用来接收闹钟的广播事件,然后进行相关处理,
Java代码
public class AlarmReceiver extends BroadcastReceiver {
/* (non-Javadoc)
* @see android.content.BroadcastReceiver#onReceive(android.content.Context, android.content.Intent)
*/
@Override
public void onReceive(Context arg0, Intent data) {
Log.d(Alarm.TAG, "the time is up,start the alarm...");
Toast.makeText(arg0, "闹钟时间到了!", Toast.LENGTH_SHORT).show();
}
}
这个代码就很简单了,主要是要继 承 BroadcastReceiver 这个类,然后重写onRecive方法。onRecive方法在闹钟的时间达到之后会执行,在这里我们可以做自己的事情,比如启动某个程序,或者播放铃声,我这里就是简单的提示一下,使用的是Toast。
5、在android的AndroidManifest.xml文件中注册广播接收器:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
Xml代码

package="com.ql.activity"

android:versionCode="1"

android:versionName="1.0">

阅读更多 >>>  手机打电话声音特别小怎么解决

<activity android:name=".Alarm"
android:label="@string/app_name">

核心的配置为
,这也是闹钟程序的关键,如果不做这个配置,那么时间到了之后,闹钟将不会提示。
接下来就是到模拟器上测试,运行截图如上图。程序源代码见附件。有没有适合 Android 开发初学者的 App 源码推荐

Android bus上面的一些小案例比较简单。
GitHub上google和googlesample这两个帐号下有若干Android app,大部分都是遵循google推荐的最佳实践,并且符合Material Design,很值得学习。手机码字,晚上回去给好连接
首先介绍 iosched这个项目,google/iosched · GitHub 。
iosched项目是Google I/O的官方app,不仅仅是一个学习的demo,这是一个真正开源的线上项目。
这个项目里面使用了大量Google官方推荐的最佳实践,比如使用loader加载数据,大量使用本地sqlite缓存数据,通过syncAdapter来更新本地缓存的数据,配合GMS达到节约流量省电的目的。另外这个app也是学些MaterialDesign的不错的范例。另外这个app还很好的适配了手机和pad,如果你想要做这方面的适配工作,不妨也参考一下
至于项目的committer,你可以找到比如romannurik这种Google Android项目开发者,证实这并不是Google的实习生写的项目,而是Android平台的核心工程师所做,质量自然很有保证。
第二个推荐的就是topeka项目 googlesamples/android-topeka · GitHub 。
这个项目是Google前几天刚发出来,用来展示如何将MaterialDesign应用到你的app中,以达到最佳设计和交互效果。通过这个app,你还可以学到如何设计你app的交互和视觉以更好的和MaterialDesign搭配。

网站数据信息

"android简单app实例代码,有没有适合 Android 开发初学者的 App 源码推荐"浏览人数已经达到16次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:android简单app实例代码,有没有适合 Android 开发初学者的 App 源码推荐的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!