点击上方“码农的后花园”,选择“星标” 公众号
精选文章,第一时间送达
之前给大家制作了一个来自程序员的表白神器,本期带大家做一个“生日快乐”App”,来自程序员的生日礼物,不要再说程序员不懂浪漫咯~
往期精彩:
Android App 开发的三种姿势 ~
模型部署,移动端安卓App开发环境搭建和配置教程 ~
运你的第一个“Hello World” 安卓App(附赠:安卓开发入门手册)
创建了一个空白的App项目后(不会创建的,可以看我前面几期关于安卓的文章哦),会发现App项目文件结构主要包括:manifests、java、res三个子文件夹,分别对应于App项目配置文件、App页面逻辑控制代码、App页面布局。
所以新建一个空白的App项目后,制作“生日快乐”App的第一步:在app项目的res文件下的layout文件中的activity_main.xml文件中编写App的页面,分别绘制一个文本框控件,一个图片展示控件和一个播放/暂停按钮,最终的页面布局设置如下。
activity_main.xml代码如下:
在此之前,我们需要将我们要在App上展示的多啦A梦的图片img.jpg和生日快乐歌music.mp4分别放置在app文件夹下的drawble和raw文件夹下。
然后在App项目结构的java文件中的MainActivity.java文件编写播放/暂停生日快乐歌按钮的逻辑控制代码,简单的逻辑是首先获取播放music.mp4的媒体流对象,然后为按钮设置一个点击事件:点击播放按钮,播放生日快乐歌,按钮显示暂停状态,再次点击,暂停播放,再次点击,再次播放。
很简单的一个逻辑控制,MainActivity.java文件内容如下:
package com.example.happybirthday;
import androidx.appcompat.app.AppCompatActivity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
//java代码控制"界面布局"的逻辑控制
public class MainActivity extends AppCompatActivity {
@Override
//主程序main
protected void onCreate(Bundle savedInstanceState) {
//初始化继承Oncreate类
super.onCreate(savedInstanceState);
//显示布局
setContentView(R.layout.activity_main);
//初始化布局:自定义initUI方法
initUI();
}
private void initUI() {
//首先获取媒体播放对象
MediaPlayer mediaPlayer = MediaPlayer.create(getApplicationContext(), R.raw.viedo);
//然后根据控件id找到相应的按钮、并注册一个按钮点击事件:setOnClickListener监听点击对象->onClick
findViewById(R.id.btn).setOnClickListener(new View.OnClickListener() {
@Override
//当我们点击btn这个id对应的按钮后,会回调onClick方法
public void onClick(View view) {
//判断媒体播放对象是否正在播放
if(mediaPlayer.isPlaying()){
mediaPlayer.pause(); //如果正在播放,就停止播放
}else{
mediaPlayer.start(); //如果没有播放,就开始播放
}
}
});
}
}
最后检查一下app项目配置文件: manifests文件下的AndroidMainfest.xml文件,这里一般不需要进行任何的修改。
点击菜单栏里的,绿色箭头按钮,就可以在我们已经下载好了的虚拟手机设备上运行调试“生日快乐”App了。也可以打开我们自己的手机的开发者模式,直接在我们自己的真机上对设计的App进行运行调试。创建电脑端的虚拟手机和在真机上调试运行App,具体 *** 作,可见往期文章: 运行你的第一个“Hello World” 安卓App(附赠:安卓开发入门手册)
这样,我们“生日快乐”APP就已经做好了,只不过这个App现在是安装在我们的虚拟的手机模拟器上。我们点击菜单栏里灰色的下三角按钮,将当前项目结构Android切换成Project结构展示,就可以看到调试运行生成debug版本的App的安装包文件app-debug.apk。
但是此时你将这个App的安装包文件app-debug.apk发给别人或者自己的手机上进行下载安装,是无法成功的。
这是因为此时生成App的安装包文件app-debug.apk, 是调试运行生成安装包.apk文件是debug版本的,它是调试运行时生成的,不是打包生成的,所以无法运行在真机上。只有release版本App的安装包.apk文件,也就是打包发布生成的App的安装包。
经过打包 *** 作之后,生成发布版的的App的安装包app-release.apk文件,可以在项目Project项目下的app文件夹下的release文件中找到,如下所示。
简单来点说就是,运行调试生成的app用的是你电脑本端的系统环境运行的,此时你发给别人,别人没有你电脑端的系统环境是无法运行的。而打包生成的app,是将你电脑端所用的一切环境集成打包,这样别人没有你电脑端的环境,也可以下载安装你设计的App了。
下一期教大家如何将自己在Android Studio 上调试运行好生成的App打包生成可运行在真机上的安装包,后台回复,关键字“生日快乐”,获得已经打包的生日快乐App文件安装包。
——The End——
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)