调用后动态壁纸其实是显示在Activity的后面,而Activity则是透明显示,这样就可以看到下面的动态壁纸,如果Activity不是透明的则什么也看不到。
代码中有用到两个接口
IWallpaperService mService;
IWallpaperEngine mEngine;
我们可以看到该目录下面有三个aidl接口,分别是
interface IWallpaperConnection {
void attachEngine(IWallpaperEngine engine);
ParcelFileDescriptor setWallpaper(String name);
}
oneway interface IWallpaperService {
void attach(IWallpaperConnection connection,
IBinder windowToken, int windowType, boolean isPreview,
int reqWidth, int reqHeight);
}
oneway interface IWallpaperEngine {
void setDesiredSize(int width, int height);
void setVisibility(boolean visible);
void dispatchPointer(in MotionEvent event);
void dispatchWallpaperCommand(String action, int x, int y, int z, in Bundle extras);
void destroy();
}
定义壁纸管理和壁纸信息变量
private WallpaperManager mWallpaperManager = null;
private WallpaperInfo mWallpaperInfo = null;
private WallpaperConnection mWallpaperConnection = null;
private Intent mWallpaperIntent;
初始化这些变量
mWallpaperManager = WallpaperManagergetInstance(this);
mWallpaperInfo = mWallpaperManagergetWallpaperInfo();//如果返回null则说明当前不是动态壁纸
mWallpaperIntent = new Intent(WallpaperServiceSERVICE_INTERFACE);
mWallpaperIntentsetClassName(mWallpaperInfogetPackageName(), mWallpaperInfogetServiceName());
绑定动态壁纸服务
bindService(mIntent, this, ContextBIND_AUTO_CREATE);
IWallpaperService mService;//这里有一个adil接口
在连接监听中试着attach
public void onServiceConnected(ComponentName name, IBinder service) {
mService = IWallpaperServiceStubasInterface(service);
try {
mServiceattach(this, viewgetWindowToken(),
// WindowManagerLayoutParamsTYPE_APPLICATION_MEDIA_OVERLAY,
WindowManagerLayoutParamsTYPE_APPLICATION_MEDIA,
true, rootgetWidth(), rootgetHeight());
} catch (RemoteException e) {
Logw("", "Failed attaching wallpaper; clearing", e);
}
}
1、下载安装AnimGIFLiveWallpaper,值得注意的是,安装成功之后,在应用程序列表是无法找到它的图标,找到方式看下图:2、进入AnimGIFLiveWallpaper,点击左下方的设置按钮,选择“SetGIFImage”按钮即进入文件目录浏览,找到需要设置为壁纸的GIF动图,点击设置壁纸即可。注意事项:1、GIF动图体积不要过大,尽量不要超过1M,否则会出现卡顿、掉帧等播放问题;2、设置动图为壁纸后,会导致耗电量的增加。
我系统说一下:
打开re管理器——SYSTEM——app——找到你那个程序名——长按打开菜单——提取全部内容——选择“是”
然后会提示你在SD卡里有个同名的文件夹,打开就可以慢慢找到了
安卓手机壁纸怎么设置 ,手指长触屏幕
1手机桌面点击 应用程序中设置
2设置---显示---壁纸
3选择动态壁纸进行设置
4设置自己喜欢的动态壁纸
5设置成为壁纸就可以了
然后设置安卓动态壁纸:
1、请确认系统是Android 21 及以上。
2、我们先去网上找一个喜欢的动态壁纸,然后下载到手机上。
3、下载“安卓动态壁纸”软件,然后安装。
4、打开软件,找到刚刚下载回来的,然后进行设置。
以上就是关于android中代码是如何实现调用动态壁纸的全部的内容,包括:android中代码是如何实现调用动态壁纸的、如何实现 Android 动态壁纸效果、android手机要如何提取动态壁纸的背景图等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)