当前位置: 首页 > news >正文

专业网站建设培训机构海口网站建设方案优化

专业网站建设培训机构,海口网站建设方案优化,html网页表格制作,seo外推一、需求背景 每逢重要佳节#xff0c;很多应用启动图标会自动更新为对应佳节的图标#xff0c;应用无需更新。 二、效果图 更新后的启动图标和应用名称 三、实现流程 Android app只能替换内置的icon#xff0c;因此需要提前将logo图标放入App资源文件件里 实际项目App更新…一、需求背景 每逢重要佳节很多应用启动图标会自动更新为对应佳节的图标应用无需更新。 二、效果图 更新后的启动图标和应用名称 三、实现流程 Android app只能替换内置的icon因此需要提前将logo图标放入App资源文件件里 实际项目App更新桌面启动图标由服务器端控制可以在App启动页里请求全局配置接口根据接口返回的是否更新启动图标字段值进行处理。 大多数都是用activity-alias方式更新启动图标和应用名称但是谷歌建议新建activity继承启动页的activity新建的activity里面是空的。 下面的代码采用新建activity继承启动页的activity方式实现动态更新App启动图标和应用名称 3.1 AndroidManifest.xml代码 ?xml version1.0 encodingutf-8? manifest xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:toolshttp://schemas.android.com/toolsapplicationandroid:allowBackuptrueandroid:dataExtractionRulesxml/data_extraction_rulesandroid:fullBackupContentxml/backup_rulesandroid:iconmipmap/ic_launcherandroid:labelstring/app_nameandroid:roundIconmipmap/ic_launcher_roundandroid:supportsRtltrueandroid:themestyle/Theme.Testtools:targetApi31activityandroid:name.ui.activity.LauncherActivityandroid:exportedtrueintent-filteraction android:nameandroid.intent.action.MAIN /category android:nameandroid.intent.category.LAUNCHER //intent-filter/activity!-- 更改启动图标和应用名称 --!-- activity-alias--!-- android:name.ui.activity.NewMainActivity--!-- android:enabledfalse--!-- android:exportedtrue--!-- android:iconmipmap/ic_launcher_shlx--!-- android:labelstring/app_name2--!-- android:targetActivity.ui.activity.MainActivity--!-- intent-filter--!-- action android:nameandroid.intent.action.MAIN /--!-- category android:nameandroid.intent.category.LAUNCHER /--!-- /intent-filter--!-- /activity-alias--activityandroid:name.ui.activity.LauncherActivityNewandroid:enabledfalseandroid:exportedtrueandroid:iconmipmap/ic_launcher_mid_autumn_festivalandroid:labelstring/app_name2android:targetActivity.ui.activity.MainActivityintent-filteraction android:nameandroid.intent.action.MAIN /category android:nameandroid.intent.category.LAUNCHER //intent-filter/activityactivityandroid:name.ui.activity.MainActivityandroid:launchModestandardandroid:screenOrientationportrait /activityandroid:name.ui.activity.SettingActivityandroid:launchModestandardandroid:screenOrientationportrait //application/manifest注意 3.2 activity_launcher.xml代码 ?xml version1.0 encodingutf-8? androidx.constraintlayout.widget.ConstraintLayout xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:apphttp://schemas.android.com/apk/res-autoxmlns:toolshttp://schemas.android.com/toolsandroid:idid/mainandroid:layout_widthmatch_parentandroid:layout_heightmatch_parenttools:context.ui.activity.LauncherActivityTextViewandroid:idid/tvSetLogoandroid:layout_widthmatch_parentandroid:layout_height50dpandroid:layout_margin16dpandroid:backgroundcolor/blackandroid:gravitycenterandroid:text启动页android:textColorcolor/whiteandroid:textSize20spapp:layout_constraintBottom_toBottomOfparentapp:layout_constraintEnd_toEndOfparentapp:layout_constraintStart_toStartOfparentapp:layout_constraintTop_toTopOfparent //androidx.constraintlayout.widget.ConstraintLayout3.3 LauncherActivity.kt代码 package com.example.test.ui.activityimport android.content.ComponentName import android.content.Intent import android.content.pm.PackageManager import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import com.example.test.R import com.example.test.utils.LogUtilopen class LauncherActivity : AppCompatActivity() {private lateinit var mPackageManager: PackageManageroverride fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState) // enableEdgeToEdge()setContentView(R.layout.activity_launcher) // ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets - // val systemBars insets.getInsets(WindowInsetsCompat.Type.systemBars()) // v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom) // insets // }// LogUtil.i(获取到的路径 simpleName${ LunchActivity::class.java.simpleName}) // LogUtil.i(获取到的路径 packageName${ LunchActivity::class.java.package.name}) // LogUtil.i(获取到的路径 name${ LunchActivity::class.java.name})/*获取到的路径 simpleNameLunchActivity获取到的路径 packageNamecom.example.test.ui.activity获取到的路径 namecom.example.test.ui.activity.LunchActivity*/initData()initView()initEvent()if (this::class.java.simpleName.equals(LauncherActivityNew::class.java.simpleName)) {LogUtil.i(没有 执行 updateLauncherIcon)startActivity(Intent(this, MainActivity::class.java))finish()} else {updateLauncherIcon()}}private fun initData() {mPackageManager applicationContext.packageManager}private fun initView() {}private fun initEvent() {}private fun updateLauncherIcon() {LogUtil.i(执行了 updateLauncherIcon) // var festervalIcon ComponentName(baseContext, com.example.test.ui.activity.LunchActivity)var festervalIcon ComponentName(baseContext, LauncherActivityNew::class.java.name)enableComponent(festervalIcon)disableComponent(componentName)startMainActivity()}/*PackageManager.DONT_KILL_APPPackageManager.SYNCHRONOUS*///启用组件private fun enableComponent(componentName: ComponentName) {mPackageManager.setComponentEnabledSetting(componentName,PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP)}//隐藏组件private fun disableComponent(componentName: ComponentName) {mPackageManager.setComponentEnabledSetting(componentName,PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP)}private fun startMainActivity() {val intent Intent(this, MainActivity::class.java)intent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT or Intent.FLAG_ACTIVITY_MULTIPLE_TASK)this.startActivity(intent)finish()} }3.4 LauncherActivityNew.kt代码 class LauncherActivityNew : LauncherActivity() { }3.5 activity_main.xml代码 ?xml version1.0 encodingutf-8? androidx.constraintlayout.widget.ConstraintLayout xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:apphttp://schemas.android.com/apk/res-autoxmlns:toolshttp://schemas.android.com/toolsandroid:idid/mainandroid:layout_widthmatch_parentandroid:layout_heightmatch_parenttools:context.ui.activity.LauncherActivityTextViewandroid:idid/tvSetLogoandroid:layout_widthmatch_parentandroid:layout_height50dpandroid:layout_margin16dpandroid:backgroundcolor/blackandroid:gravitycenterandroid:text打开设置页面android:textColorcolor/whiteandroid:textSize20spapp:layout_constraintBottom_toBottomOfparentapp:layout_constraintEnd_toEndOfparentapp:layout_constraintStart_toStartOfparentapp:layout_constraintTop_toTopOfparent //androidx.constraintlayout.widget.ConstraintLayout3.6 MainActivity.kt代码 package com.example.test.ui.activityimport android.content.Intent import android.os.Bundle import android.widget.TextView import androidx.appcompat.app.AppCompatActivity import com.example.test.Rclass MainActivity : AppCompatActivity(R.layout.activity_main) {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)findViewByIdTextView(R.id.tvSetLogo).setOnClickListener {startActivity(Intent(this,SettingActivity::class.java))}} }3.7 activity_setting.xml代码 ?xml version1.0 encodingutf-8? LinearLayout xmlns:androidhttp://schemas.android.com/apk/res/androidandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentandroid:orientationverticalTextViewandroid:layout_widthmatch_parentandroid:layout_height50dpandroid:layout_gravitycenterandroid:gravitycenterandroid:text设置android:textColorcolor/blackandroid:textSize20sp //LinearLayout3.8 SettingActivity.kt代码 package com.example.test.ui.activityimport android.os.Bundle import androidx.appcompat.app.AppCompatActivity import com.example.test.Rclass SettingActivity: AppCompatActivity(R.layout.activity_setting) {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)} }
http://www.w-s-a.com/news/741439/

相关文章:

  • 农业信息网站建设意义淘宝官网首页网址
  • 重庆网站设计公司价格贵阳网站建设app开发
  • dw做网站怎么换图片编写网页所用的语言是
  • 外贸网站收录工具个人网站的备案
  • 正规的网站建设工作室海外高延迟服务器做网站
  • 网站设计确认函合肥做网站维护的公司
  • 小说网站推荐网站开发语言怎么查
  • 网页制作基础教程慕课版电子版那种登录才能查看的网站怎么做优化
  • 制作网站用的域名网站域名注册信息查询
  • 公司域名查询官方网站女教师遭网课入侵直播录屏曝
  • 网站开发社交网络功能的作用腾讯公司网站
  • 网站建设需要微信账号和密码网站建设工作汇报
  • 国家城乡住房和建设部网站西安私人网站
  • 天津高端网站定制seo实战教程
  • 网站文章怎么做才能被快速收录网站备案核验系统
  • 子网站建设方案l建设银行网站
  • 免费看舆情网站网站备案用户名忘了怎么办
  • 地方门户网站的分类网站的方案
  • 沧州哪里做网站网站的建设是什么
  • 设计公司海报秦皇岛seo网站推广
  • 网站导航规划wordpress做漫画
  • jsp体育用品网站建设wordpress 10万篇文章
  • 沈阳做微信和网站的公司网站在线支付接口
  • 重庆整合网络营销百度seo快速提升排名
  • 设计师网站外网百度分析工具
  • 旅游网站建设技术解决方案wordpress主题安装后找不到
  • 网站图片文字排版错误管理系统界面设计
  • 网站建设 台州广州惠科互联网技术有限公司
  • 网站页面尺寸大小四川鸿业建设集团网站
  • 做女朋友的网站局网站建设方案word