`

LibGDX制作android动态壁纸

阅读更多

一、还是像普通的android动态壁纸一样,创建一个没有activity的安卓工程TestLibGDXWallpaper
二、AndroidManifest.xml配置

  1.     <application
  2.         android:icon="@drawable/icon"
  3.         android:label="@string/app_name" >
  4.         <service
  5.             android:name=".MyLiveWallpaper"
  6.             android:icon="@drawable/icon"
  7.             android:label="@string/app_name"
  8.             android:permission="android.permission.BIND_WALLPAPER" >
  9.             <intent-filter>
  10.                 <action android:name="android.service.wallpaper.WallpaperService" />
  11.             </intent-filter>
  12.             <meta-data
  13.                 android:name="android.service.wallpaper"
  14.                 android:resource="@xml/livewallpaper" />
  15.         </service>
  16.     </application>
复制代码

1、权限android:permission="android.permission.BIND_WALLPAPER",否则该壁纸只能预览,不能被实际应用
2、
添加声明android:name="android.service.wallpaper.WallpaperService"以便系统识别
3、android:name=".MyLiveWallpaper"为动态壁纸的service类
4、meta-data部分为动态壁纸的配置信息xml/livewallpaper需要手动创建res/xml/livewallpaper.xml


三 、livewallpaper.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <wallpaper xmlns:android="http://schemas.android.com/apk/res/android"
  3.     android:thumbnail="@drawable/icon" />
复制代码

只是配置其图标(没有“设置”项)


四、jar包和.so库导入
将从官方下载下来的压缩包中的gdx.jar和gdx-backend-android.jar包复制到工程libs目录下(再build path 步骤省略),将相关.so库复制到libs目录下!
 



五、service实现
1、service类MyLiveWallpaper实现gdx-backend-android中的AndroidLiveWallpaperService,这将需要实现三个抽象方法createConfig、createListener,这两个方法将会在壁纸出现时被调用(预览和点击设置之后都会调用);offsetChange,动态壁纸屏幕偏移量改变时调用!
2、createConfig直接返回new AndroidApplicationConfiguration();
3、createListener返回自写的类MyApplicationListener(实现ApplicationListener);
4、offsetChange可保存一些需要的偏移量。


至此一个动态壁纸的整体模版就出来了,可以设置为动态壁纸了,只是这个动态壁纸还没有内容罢了!
 

看到黑乎乎的动态壁纸却不知道怎么给其加上view,那么主要的问题就是在哪里添加view,就像普通的动态壁纸,显然添加不会放在service,那么就只能放在applicationListener咯
而applicationListener正是之前做桌面特效的粒子监听,于是将其搬移至此,测试可用!
 

分享到:
评论

相关推荐

    libgdx android

    标题“libgdx android”表明我们将讨论的是如何在Android设备上使用LibGDX进行游戏开发。 LibGDX的核心组件包括以下几个部分: 1. **Core Modules**:这是LibGDX的基础,提供图形渲染、音频处理、输入检测等核心...

    libgdx游戏引擎android平台jar包

    这个标题提到的是LibGDX在Android平台上的核心库,即`gdx.jar`和`gdx-backend-android.jar`。 首先,`gdx.jar`是LibGDX的核心库,包含了游戏开发所需的大部分功能。它提供了图形渲染(包括2D和3D)、音频处理、输入...

    安卓中利用libGdx使用Spinne动画需要的jar包

    下载后将libs中的gdx.jar,gdx-backend-android.jar,spine-libgdx.jar包放入androidstudio或elipse的libs下,将armeabi中的so放入jini目录下.支持使用libgdx使用spinne。

    基于libGDX的Android赛车游戏的设计与实现.pdf

    描述中提到的“多张图片连在一起循环滚动实现赛道地图移动的效果”,就是利用libGDX的图形处理能力,通过组合多张静态图像来模拟动态的赛道场景。 其次,对象池技术被用于高效管理赛车对象。对象池是一种优化内存...

    Android代码-libGDX-Android-AppEffect

    libGDX is a cross-platform Java game development framework based on OpenGL (ES) that works on Windows, Linux, Mac OS X, Android, your WebGL enabled browser and iOS. 用什么方式能够实现高效的流畅的...

    android平台libgdx 解析obj文件

    LibGDX是一个强大的跨平台游戏开发框架,支持Android、iOS、桌面等系统。在LibGDX中解析OBJ文件,可以让我们方便地将3D模型整合到游戏中。 首先,我们需要了解LibGDX中的`com.badlogic.gdx.graphics.g3d.loaders`包...

    移植java游戏开发框架libgdx到Android平台.zip

    《移植Java游戏开发框架LibGDX到Android平台的深度解析》 LibGDX,一个强大的开源游戏开发框架,以其跨平台特性和丰富的功能在Java开发者中广受欢迎。它允许开发者用一套代码同时创建桌面版、Android版、iOS版以及...

    移植java游戏开发框架libgdx到Android平台

    Java游戏开发框架LibGDX是跨平台的游戏开发库,它为开发者提供了在多个平台上构建2D和3D游戏的能力,包括Android、iOS、桌面(Windows、Linux、Mac OS X)以及WebGL。本项目是将一个使用LibGDX框架开发的Java游戏...

    LIBGDX与安卓间交互

    libgdx 与安卓共同制作的一个基于socket的遥控器程序,帮同学做毕设时候做的,可实现libgdx空间与android空间的数据交互、libgdx加入android的view、layout等功能。

    Android游戏源码大合集(主要是AndEngine和Libgdx的).zip

    Android游戏源码大合集(主要是AndEngine和Libgdx的) 最近在网络上看到有网友抱怨Android游戏源码找不到,所以小弟收集了一些AndEngine和Libgdx的游戏源码,以Eclipse工程的形式配置好环境,再陆续发出(某引擎避嫌...

    在libGDX中调用Android设备摄像头

    如何在libGDX框架中中调用android摄像头的代码,不是镜头,是设备摄像头,可以实现类似AR的效果,但是没有互动,也是配合http://blog.csdn.net/weiqiang_1989/article/details/52170522使用 或者也可以算是 ...

    libgdx桌面AndroidHTML5和iOS的Java游戏开发框架

    libgdx项目的结构通常包括核心项目(core)、桌面项目(desktop)、Android项目(android)、HTML5项目(html)和iOS项目(ios)。核心项目包含了所有平台通用的代码,其他项目则根据各自平台的特性进行扩展。 四、...

    android游戏引擎 libgdx

    9. **Extension Libraries**:除了核心库,LibGDX还有许多扩展库,如gdx-freetype用于动态字体生成,gdx-tools提供了一些实用工具,gdx-pay用于支付集成等,这些扩展库丰富了开发者的工具箱。 10. **社区支持**:...

    libgdx 环境搭建

    LibGDX 是一个强大的开源游戏开发框架,它允许开发者使用 Java 语言创建跨平台的游戏应用,包括 Android、iOS、桌面(Windows、Mac、Linux)以及网页浏览器(HTML5)。在开始使用 LibGDX 进行游戏开发之前,我们需要...

    LibGDX Lua Tutorial工程

    LibGDX是一个强大的开源游戏开发框架,它支持跨平台的游戏开发,包括Android、iOS、桌面系统(Windows、MacOS、Linux)以及Web浏览器。在这个"LibGDX Lua Tutorial工程"中,开发者可以学习如何利用LibGDX框架结合Lua...

    libgdx 游戏地图的制作

    在这个主题中,我们将深入探讨如何使用LibGDX来制作游戏地图。游戏地图是任何2D游戏的核心元素,它为玩家提供了一个探索和互动的空间。LibGDX 提供了TiledMap类,使开发者能够方便地创建、加载和渲染游戏地图。 **1...

    java游戏开发框架libgdx到Android平台

    用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载使用。用java写的项目,适合初学者学习,在这里免费分享给大家,欢迎下载...

    android游戏开发框架libgdx的使用3归纳.pdf

    LibGDX提供了`freeTypeFontGenerator`类,可以动态生成BitmapFont,并且支持各种字体样式和大小: ```java FreeTypeFontGenerator generator = new FreeTypeFontGenerator(Gdx.files.internal("fonts/notosans.ttf...

Global site tag (gtag.js) - Google Analytics