Android开发分享UIAndroid开发

Android 启动页与广告页面

2017-09-19  本文已影响471人  YbSTGing

最近项目写到了APP打开的启动页和广告页面,特此记录,以待备用。

这张图片是网上找的,流程很清晰,出处在下面的参考资料1中,有需要的可以去看一下。

APP-start.png

一、启动页面

众所周知,APP在启动的时候,会有一小段时间(白屏、黑屏),系统会预读APP的主题,所以有的黑屏,有的白屏。

设置启动页目的:提升用户体验。

知识点:

解决方案:

方案1、(使用Splash页面)

建立 Splash 页面(好多人这样叫),并通过设置theme,使用背景颜色或者图片代替空白页面。

  1. 建立一个 空白 Activity 页面,取名 SplashActivity,并在 AndroidManifest 中设置为启动的页面
start01.png

SplashActivity页面的代码:

start5.png
  1. 在res/values/styles 文件中,新建一个theme ,如下图所示:
start02.png

注意: 其中的 windowBackground 设置,可以设置为 *.xml 文件 也可以直接设置为 图片。
设置图片,图片固定,设置xml文件可以实现复杂效果(没用过)。

  1. 使用xml 文件
    在res/drawable下新建一个layer-list,比如bg_splash.xml。

之所用layer-list是因为这个可以进行图片叠加。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <!-- 图片 -->
        <bitmap
            android:gravity="center"
            android:src="@drawable/wel_page" />
    </item>
</layer-list>
  1. 使用图片,放到 drawable文件夹下面(适配这个可要考虑了),而且如果使用了图片,内存中不会释放,所以在代码中要通过流读取文件设置(查看资料这样说的,目前不考虑这块)

  2. 将theme 设置为 SplashActivity中。

方案2、

在网上找的另外一种方案:

以上的3个都可以保证不会出现白屏或者黑屏,但是在主程序中,启动的时候不能做复杂的操作,否则会导致
在手机中点击了应用程序的图标,但过一、两秒才会打开应用程序不好的卡顿体验效果。

部分代码设置:

<style name="AppTheme.NoActionBar.Splash">
    <item name="android:windowIsTranslucent">@bool/windowIsTranslucent</item>
    <item name="android:windowBackground">@color/transparent</item>
</style>

二、广告页面(有的叫闪屏页面)

目前市面基本大部分APP 都有这块功能,打开APP,等待3s就会自动跳转到主页面,或者手动点击跳过广告按钮。其中的广告内容会动图变更。

目的:

思路:打开APP的时候,联网请求广告图片,加载并保存本地。下次打开APP首先加载本地图片,然后请求网络看是否有新的图片。

参考资料:

  1. Android 启动页面与广告页面的实现
  2. 带你重新认识:Android Splash页秒开 Activity白屏 Activity黑屏
  3. google youtobe splash页面的实现(英文)
  4. Android app启动页广告
上一篇 下一篇

猜你喜欢

热点阅读