百度SEO

百度SEO

Products

当前位置:首页 > 百度SEO >

无锡市城乡建设局网站提供的手机网站模块是什么?

96SEO 2026-02-20 08:15 19


2.1、展示

通知以不同的位置和格式向用户显示#xff0c;例如状态栏中的图标、…简介

无锡市城乡建设局网站提供的手机网站模块是什么?

Android

之外显示的消息用于向用户提供提醒、来自其他人的通信或来自您的应用的其他及时信息。

用户可以点击通知打开您的应用或直接从通知中执行操作。

2.1、展示

通知以不同的位置和格式向用户显示例如状态栏中的图标、通知抽屉中更详细的条目、应用程序图标上的徽章以及自动配对的可穿戴设备。

当发出通知时它首先在状态栏中显示为一个图标。

2.2、操作

用户可以在状态栏上向下滑动以打开通知抽屉他们可以在其中查看更多详细信息并根据通知执行操作。

用户可以向下拖动抽屉中的通知以显示展开的视图该视图显示其他内容和操作按钮如果提供。

通知在通知抽屉中保持可见直到被应用程序或用户关闭。

3、功能拆解

本文将带领实现各种常见的通知功能以及各个Android版本需要做的适配。

4、功能实现

通知管理器用来发起、更新、删除通知NotificationChannel

通知渠道8.0及以上配置渠道以及优先级NotificationCompat.Builder

private

NotificationChannel(mNormalChannelId,

mNormalChannelName,

NotificationManager.IMPORTANCE_LOW).apply

{description

是否在桌面显示角标}mManager.createNotificationChannel(channel)}//

点击意图

MaterialButtonActivity::class.java)val

pendingIntent

PendingIntent.getActivity(this,

intent,

PendingIntent.FLAG_IMMUTABLE)//

构建配置mBuilder

NotificationCompat.Builder(thisNotificationActivity,

mNormalChannelId).setContentTitle(普通通知)

文本.setSmallIcon(R.mipmap.ic_launcher)

小图标.setLargeIcon(BitmapFactory.decodeResource(resources,

R.mipmap.ic_avatar))

大图标.setPriority(NotificationCompat.PRIORITY_DEFAULT)

7.0

设置优先级.setContentIntent(pendingIntent)

mManager.cancel(mNormalNotificationId)、cancelAll、setTimeoutAfter()//

发起通知mManager.notify(mNormalNotificationId,

mBuilder.build())}

优先级or重要性7.0和8.0的方式不同setContentIntent

点击意图setAutoCancel

重要通知优先级设置最高会直接显示在屏幕内前台而不是只有通知抽屉里所以一定要谨慎设置不要引起用户的负面情绪。

private

MaterialButtonActivity::class.java)val

pendingIntent

PendingIntent.getActivity(this,

intent,

PendingIntent.FLAG_IMMUTABLE)if

{val

NotificationChannel(mHighChannelId,

mHighChannelName,

NotificationManager.IMPORTANCE_HIGH)channel.setShowBadge(true)mManager.createNotificationChannel(channel)}mBuilder

NotificationCompat.Builder(thisNotificationActivity,

mHighChannelId).setContentTitle(重要通知).setContentText(重要通知内容).setSmallIcon(R.mipmap.ic_launcher).setLargeIcon(BitmapFactory.decodeResource(resources,

R.mipmap.ic_avatar)).setAutoCancel(true).setNumber(999)

自定义桌面通知数量.addAction(R.mipmap.ic_avatar,

去看看,

通知上的操作.setCategory(NotificationCompat.CATEGORY_MESSAGE)

通知类别勿扰模式时系统会决定要不要显示你的通知.setVisibility(NotificationCompat.VISIBILITY_PRIVATE)

屏幕可见性锁屏时显示icon和标题内容隐藏mManager.notify(mHighNotificationId,

mBuilder.build())}

通知类别勿扰模式时系统会决定要不要显示你的通知setVisibility

可以通过addAction在通知上添加一个自定义操作如上图去看看。

可以通过PendingIntent打开一个Activity也可以是发送一个广播。

在Android10.0及以上系统也会默认识别并添加一些操作比如短信通知上的「复制验证码」。

4.2.2、重要性等级

紧急发出声音并显示为提醒通知高发出声音中没有声音低无声音且不出现在状态栏中

private

createNotificationForProgress()

{if

NotificationChannel(mProgressChannelId,

NotificationManager.IMPORTANCE_DEFAULT)mManager.createNotificationChannel(channel)}val

progressMax

NotificationCompat.Builder(thisNotificationActivity,

mProgressChannelId).setContentTitle(进度通知).setContentText(下载中$progressCurrent%).setSmallIcon(R.mipmap.ic_launcher).setLargeIcon(BitmapFactory.decodeResource(resources,

第3个参数indeterminatefalse表示确定的进度比如100true表示不确定的进度会一直显示进度动画直到更新状态下载完成或删除通知.setProgress(progressMax,

progressCurrent,

false)mManager.notify(mProgressNotificationId,

mBuilder.build())}

false表示确定的进度比如100true表示不确定的进度会一直显示进度动画直到更新状态完成或删除通知

private

updateNotificationForProgress()

{if

1.更新进度mBuilder.setContentText(下载中$progressCurrent%).setProgress(progressMax,

progressCurrent,

2.下载完成//mBuilder.setContentText(下载完成).setProgress(0,

false)mManager.notify(mProgressNotificationId,

mBuilder.build())Toast.makeText(this,

else

更新进度修改进度值即可下载完成总进度与当前进度都设置为0即可同时更新文案

注意如果有多个进度通知如何更新到指定的通知是通过NotificationId匹配的。

Authoryechaoa

NotificationChannel(mBigTextChannelId,

mBigTextChannelName,

NotificationManager.IMPORTANCE_DEFAULT)mManager.createNotificationChannel(channel)}mBuilder

NotificationCompat.Builder(thisNotificationActivity,

mBigTextChannelId).setContentTitle(大文本通知).setStyle(NotificationCompat.BigTextStyle().bigText(bigText)).setSmallIcon(R.mipmap.ic_launcher).setLargeIcon(BitmapFactory.decodeResource(resources,

R.mipmap.ic_avatar)).setAutoCancel(true)mManager.notify(mBigTextNotificationId,

mBuilder.build())}

setStyle(NotificationCompat.BigTextStyle().bigText(bigText))

通知内容默认最多显示一行超出会被裁剪且无法展开在内容透出上体验非常不好展示的内容可能无法吸引用户去点击查看所以也有了大文本通知的这种方式

一劳永逸的做法就是无论内容有多少行都用大文本的这种方式通知具体展示让系统自己去适配。

private

createNotificationForBigImage()

{val

BitmapFactory.decodeResource(resources,

{val

NotificationChannel(mBigImageChannelId,

NotificationManager.IMPORTANCE_DEFAULT)mManager.createNotificationChannel(channel)}mBuilder

NotificationCompat.Builder(thisNotificationActivity,

mBigImageChannelId).setContentTitle(大图片通知).setContentText(有美女展开看看).setStyle(NotificationCompat.BigPictureStyle().bigPicture(bigPic)).setSmallIcon(R.mipmap.ic_launcher).setLargeIcon(BitmapFactory.decodeResource(resources,

R.mipmap.ic_avatar)).setAutoCancel(true)mManager.notify(mBigImageNotificationId,

mBuilder.build())}

setStyle(NotificationCompat.BigPictureStyle().bigPicture(bigPic))

有一个注意的点当已有多条通知时默认是合并的并不是展开的所以可以通过setContentText(有美女展开看看)加个提示。

private

NotificationChannel(mCustomChannelId,

mCustomChannelName,

NotificationManager.IMPORTANCE_DEFAULT)mManager.createNotificationChannel(channel)}//

else

{PendingIntent.FLAG_UPDATE_CURRENT}//

views

R.layout.layout_notification)//

添加暂停继续事件val

PendingIntent.getBroadcast(thisNotificationActivity,

intentStop,

mFlag)views.setOnClickPendingIntent(R.id.btn_stop,

pendingIntentStop)//

PendingIntent.getBroadcast(thisNotificationActivity,

intentDone,

mFlag)views.setOnClickPendingIntent(R.id.btn_done,

pendingIntentDone)//

NotificationCompat.Builder(thisNotificationActivity,

mCustomChannelId).setSmallIcon(R.mipmap.ic_launcher).setLargeIcon(BitmapFactory.decodeResource(resources,

R.mipmap.ic_avatar)).setAutoCancel(true).setCustomContentView(views).setCustomBigContentView(views)//

发起通知mManager.notify(mCustomNotificationId,

mBuilder.build())}

假如是一个播放器的前台通知默认的布局显示已经不满足需求那么就用到自定义布局了。

通过RemoteViews构建自定义布局view。

因为RemoteViews并不是一个真正的view它只是一个view的描述所以事件处理上还是要借助PendingIntent。

setCustomContentView

默认布局显示即折叠状态下的布局setCustomBigContentView

折叠状态下可能会展示一些基础信息拿播放器举例比如当前歌曲名称、歌手、暂停、继续、下一首等就差不多展示不下了。

private

更新状态及UIsendBroadcast(Intent(mStopAction))}private

fun

R.layout.layout_notification)val

intentUpdate

PendingIntent.getBroadcast(this,

intentUpdate,

mFlag)views.setOnClickPendingIntent(R.id.btn_stop,

根据状态更新UIif

{views.setTextViewText(R.id.tv_status,

那些你很冒险的梦-停止播放)views.setTextViewText(R.id.btn_stop,

继续)mBinding.mbUpdateCustom.text

继续}

{views.setTextViewText(R.id.tv_status,

那些你很冒险的梦-正在播放)views.setTextViewText(R.id.btn_stop,

暂停)mBinding.mbUpdateCustom.text

暂停}mBuilder.setCustomContentView(views).setCustomBigContentView(views)//

重新发起通知更新UI注意必须得是同一个通知id即mCustomNotificationIdmManager.notify(mCustomNotificationId,

mBuilder.build())}

上面提到因为RemoteViews并不能直接操作view所以可以通过广播的方式对该条通知的构建配置重新设置以达到更新的效果。

远古时期v4包里还有MediaStyleAndroidX已经下掉了。

5、常用API

API描述setContentTitle标题setContentText内容setSubText子标题setLargeIcon大图标setSmallIcon小图标setContentIntent点击时意图setDeleteIntent删除时意图setFullScreenIntent全屏通知点击意图来电、响铃setAutoCancel点击自动取消setCategory通知类别适用“勿扰模式”setVisibility屏幕可见性适用“锁屏状态”setNumber通知项数量setWhen通知时间setShowWhen是否显示通知时间setSound提示音setVibrate震动setLights呼吸灯setPriority优先级7.0setTimeoutAfter定时取消8.0及以后setProgress进度setStyle通知样式BigPictureStyle、BigTextStyle、MessagingStyle、InboxStyle、DecoratedCustomViewStyleaddAction通知上的操作10.0setGroup分组setColor背景颜色

6、各版本适配

4.0支持通知以来几乎每个版本都有各种改动也是苦了开发了...

6.1、Android

5.0开始勿扰模式下会组织所有声音和震动8.0以后可以根据渠道分别设置。

6.2、Android

NotificationCompat.Builder(thisNotificationActivity,

mNormalChannelId)....setPriority(NotificationCompat.PRIORITY_DEFAULT)

7.0

resources.getString(R.string.reply_label)

var

RemoteInput.Builder(KEY_TEXT_REPLY).run

复制代码

NotificationCompat.Builder(this,

CHANNEL_ID).setStyle(NotificationCompat.MessagingStyle(Me).setConversationTitle(Team

timestamp1,

NotificationChannel(mHighChannelId,

mHighChannelName,

NotificationManager.IMPORTANCE_HIGH)mManager.createNotificationChannel(channel)}

复制代码

notificationManager.deleteNotificationChannel(id)

复制代码

descriptionTextsetShowBadge(false)

复制代码

NotificationCompat.Builder(thisNotificationActivity,

mHighChannelId)....addAction(R.mipmap.ic_avatar,

去看看,

10.0全屏意图需要在manifest中申请USE_FULL_SCREEN_INTENT权限

6.5、Android

12.0及以上可以设置需要解锁设备才能操作setAu***nticationRequired

val

NotificationListenerVerifierActivity.TAG).addAction(...)//

from

screen..setAu***nticationRequired(true).build()

复制代码

Notification.DecoratedCustomViewStyle替代...

6.5.3、PendingIntent

java.lang.IllegalArgumentException:

com.example.imdemo:

{PendingIntent.FLAG_UPDATE_CURRENT}val

intentStop

PendingIntent.getBroadcast(thisNotificationActivity,

intentStop,

mFlag)views.setOnClickPendingIntent(R.id.btn_stop,

pendingIntentStop)

链接https://juejin.cn/post/7113509911887085581

来源稀土掘金

著作权归作者所有。

商业转载请联系作者获得授权非商业转载请注明出处。



SEO优化服务概述

作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。

百度官方合作伙伴 白帽SEO技术 数据驱动优化 效果长期稳定

SEO优化核心服务

网站技术SEO

  • 网站结构优化 - 提升网站爬虫可访问性
  • 页面速度优化 - 缩短加载时间,提高用户体验
  • 移动端适配 - 确保移动设备友好性
  • HTTPS安全协议 - 提升网站安全性与信任度
  • 结构化数据标记 - 增强搜索结果显示效果

内容优化服务

  • 关键词研究与布局 - 精准定位目标关键词
  • 高质量内容创作 - 原创、专业、有价值的内容
  • Meta标签优化 - 提升点击率和相关性
  • 内容更新策略 - 保持网站内容新鲜度
  • 多媒体内容优化 - 图片、视频SEO优化

外链建设策略

  • 高质量外链获取 - 权威网站链接建设
  • 品牌提及监控 - 追踪品牌在线曝光
  • 行业目录提交 - 提升网站基础权威
  • 社交媒体整合 - 增强内容传播力
  • 链接质量分析 - 避免低质量链接风险

SEO服务方案对比

服务项目 基础套餐 标准套餐 高级定制
关键词优化数量 10-20个核心词 30-50个核心词+长尾词 80-150个全方位覆盖
内容优化 基础页面优化 全站内容优化+每月5篇原创 个性化内容策略+每月15篇原创
技术SEO 基本技术检查 全面技术优化+移动适配 深度技术重构+性能优化
外链建设 每月5-10条 每月20-30条高质量外链 每月50+条多渠道外链
数据报告 月度基础报告 双周详细报告+分析 每周深度报告+策略调整
效果保障 3-6个月见效 2-4个月见效 1-3个月快速见效

SEO优化实施流程

我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:

1

网站诊断分析

全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。

2

关键词策略制定

基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。

3

技术优化实施

解决网站技术问题,优化网站结构,提升页面速度和移动端体验。

4

内容优化建设

创作高质量原创内容,优化现有页面,建立内容更新机制。

5

外链建设推广

获取高质量外部链接,建立品牌在线影响力,提升网站权威度。

6

数据监控调整

持续监控排名、流量和转化数据,根据效果调整优化策略。

SEO优化常见问题

SEO优化一般需要多长时间才能看到效果?
SEO是一个渐进的过程,通常需要3-6个月才能看到明显效果。具体时间取决于网站现状、竞争程度和优化强度。我们的标准套餐一般在2-4个月内开始显现效果,高级定制方案可能在1-3个月内就能看到初步成果。
你们使用白帽SEO技术还是黑帽技术?
我们始终坚持使用白帽SEO技术,遵循搜索引擎的官方指南。我们的优化策略注重长期效果和可持续性,绝不使用任何可能导致网站被惩罚的违规手段。作为百度官方合作伙伴,我们承诺提供安全、合规的SEO服务。
SEO优化后效果能持续多久?
通过我们的白帽SEO策略获得的排名和流量具有长期稳定性。一旦网站达到理想排名,只需适当的维护和更新,效果可以持续数年。我们提供优化后维护服务,确保您的网站长期保持竞争优势。
你们提供SEO优化效果保障吗?
我们提供基于数据的SEO效果承诺。根据服务套餐不同,我们承诺在约定时间内将核心关键词优化到指定排名位置,或实现约定的自然流量增长目标。所有承诺都会在服务合同中明确约定,并提供详细的KPI衡量标准。

SEO优化效果数据

基于我们服务的客户数据统计,平均优化效果如下:

+85%
自然搜索流量提升
+120%
关键词排名数量
+60%
网站转化率提升
3-6月
平均见效周期

行业案例 - 制造业

  • 优化前:日均自然流量120,核心词无排名
  • 优化6个月后:日均自然流量950,15个核心词首页排名
  • 效果提升:流量增长692%,询盘量增加320%

行业案例 - 电商

  • 优化前:月均自然订单50单,转化率1.2%
  • 优化4个月后:月均自然订单210单,转化率2.8%
  • 效果提升:订单增长320%,转化率提升133%

行业案例 - 教育

  • 优化前:月均咨询量35个,主要依赖付费广告
  • 优化5个月后:月均咨询量180个,自然流量占比65%
  • 效果提升:咨询量增长414%,营销成本降低57%

为什么选择我们的SEO服务

专业团队

  • 10年以上SEO经验专家带队
  • 百度、Google认证工程师
  • 内容创作、技术开发、数据分析多领域团队
  • 持续培训保持技术领先

数据驱动

  • 自主研发SEO分析工具
  • 实时排名监控系统
  • 竞争对手深度分析
  • 效果可视化报告

透明合作

  • 清晰的服务内容和价格
  • 定期进展汇报和沟通
  • 效果数据实时可查
  • 灵活的合同条款

我们的SEO服务理念

我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。

提交需求或反馈

Demand feedback