制作一个“生日快乐”App,来自程序员的生日礼物~

制作一个“生日快乐”App,来自程序员的生日礼物~,第1张

点击上方“码农的后花园”,选择“星标” 公众号

精选文章,第一时间送达

之前给大家制作了一个来自程序员的表白神器,本期带大家做一个“生日快乐”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——

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/992355.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存