当前位置: 首页 > 知识库问答 >
问题:

Android Studio如何从WallpaperManager获得服务意向

司马璞
2023-03-14
 Intent intent = new Intent(WallpaperManager.ACTION_CHANGE_LIVE_WALLPAPER);
            intent.putExtra(WallpaperManager.EXTRA_LIVE_WALLPAPER_COMPONENT, new ComponentName(this, WallpaperService.class));
            startActivity(intent);
            intent.putExtra("backGroundColor", mDefaultColor);

但是这个值在WallpaperService中是无法达到的。

当前服务如下所示:

public class GameOfLifeWallpaperService extends WallpaperService {

    @Override
    public Engine onCreateEngine() {
        return new GameOfLifeWallpaperEngine();
    }

    private class GameOfLifeWallpaperEngine extends Engine {
        int backgroundColor;
        ...
    }
}

共有1个答案

顾兴昌
2023-03-14

为了获得意图和它的附加/捆绑包,您需要重写服务内部的onstartCommand方法。

在那里,您将可以访问意图,并应该使用一个捆绑包来获得额外的内容。

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        super.onStartCommand(intent, flags, startId);

        Bundle bundle = intent.getExtras();
        int color = (int) bundle.get("backGroundColor");

        return START_REDELIVER_INTENT;

注意,该方法应该返回START_STICKY_COMPATIBILITY、START_STICKY、START_NOT_STICKY或START_REDELIVER_INTENT值之一。

 类似资料:
  • 有没有办法只获得一个Elasticsearch服务器的版本号。我知道您得到了JSON请求数据,但是否有方法解析该请求,只得到版本号。 curl localhost:9200

  • 问题:基于PersonDto中存在的规则值,我正在应用这些规则。在Rule1类中,我有一个修改id字段的逻辑。我正在设置新的id,我得到作为参数。 最后,我将结果存储到ArrayList中。 但是在ArrayList中,所有PersonDto的值都是我在应用规则时传递的最后一个id值。 例如: 正如您在上面的代码片段中所看到的,有两个ID10001和10002,但是当存储并打印结果时,所有元素中的

  • 我正在尝试使用类的实例向远程服务器发送HTTP POST请求。尽管我能够得到响应代码和响应消息,但当我尝试将输入流写入时,我实际上无法读取任何行。 当我分析从WireShark发送的数据包时,我注意到远程服务器正在发送一个完整的响应。我唯一的猜测是,为什么我在Java程序中看不到它,是因为我试图从InputStream中读取的时间太晚了。 那么,如何使用我的对象从远程服务器读取即时、完整的响应?以

  • 谢谢你的关注,也很抱歉我的英语不好。 我正在从中获取htmlhttp://flvxz.com/当我在输入框中输入一些单词并单击时。就像: 加载雅虎主页 搜索"某物"(输入某物词并单击按钮) 获取返回html MyWebsit通过javaScrip返回消息 这是我的密码 那么,我怎样才能得到新的html呢?我尝试如下,不工作。 我的问题: 如何获取html 非常感谢你,我正在提高我的英语。。。

  • 我的要求是,如果用户使用Lucene搜索搜索“页码”,搜索结果应注意将结果中的页码与列表顶部的精确页码匹配。 现在在我的例子中,我尝试使用SortField进行排序- 假设我搜索了术语'5',然后在搜索结果中,而不是在列表的顶部显示精确页码匹配,它显示搜索的术语'5',它存在于每个页面上。 有人能建议如何在列表顶部的Lucene搜索结果中包含页码吗。 我的代码-

  • 我有服务课。我需要通过Facebook、whatsapp、gmail、yahoo等分享我的一些细节。但当我尝试分享时,我发现了一个错误 android.util.AndroidRuntimeExcture:从活动上下文外部调用starActive()需要FLAG_ACTIVITY_NEW_TASK标志。这真的是你想要的吗? 下面是我的代码 请给我一个解决方案