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

网站做法seo会被取代吗

网站做法,seo会被取代吗,oyster wordpress,请为hs公司的钻石礼品网站做网络营销沟通策划_预算是20万.目录 前言 Android权限分类 普通权限 普通权限定义 普通权限有哪些 危险权限 危险权限的定义 危险权限有哪些 动态申请权限实例 申请单个权限实例 第一步#xff1a;在清单文件中声明权限 第二步#xff1a;在代码中进行动态申请权限 申请多个权限实例 第一步在清单文件中声明权限 第二步在代码中进行动态申请权限 申请多个权限实例 第一步在清单文件中声明权限 第二步在代码中进行动态申请权限 前言 在unity开发过程中接SDK的时候有一个问题是绕不开那就是合规问题早期的时候对于权限设置和获取并没有那么多限制或者说规范吧。现如今随着合规越来越严格对于unity游戏开发人员对于android的权限有一些大致了解还是有其必要性尤其是需要接SDK的小朋友而言更是如此。这里就简约讲解下android有哪些权限分类同时如何在运行时申请权限。由于android开发并不是我的主要技术防线所以这里只做一个简单的知识普及而已。 Android权限分类 普通权限安装时权限 危险权限运行时权限 特殊权限  一般属于系统层面这里就不作叙述 普通权限 普通权限定义 不需要动态请求用户授权只需要在AndroidManifest.xml中声明即可的权限。  此类权限允许访问超出应用沙盒的数据和执行超出应用沙盒的操作但对用户隐私和其他应用的运行构成的风险很小。系统会为一般权限分配 normal 保护级别。 例如: 网络访问魅族系统进行了魔改网络权限也需要申请、WIFI状态、音量设置等。 如 ?xml version1.0 encodingutf-8? manifest xmlns:androidhttp://schemas.android.com/apk/res/androidpackagecom.example.myappandroid:versionCode1android:versionName1.0!-- 定义应用程序的权限 --!-- 运用获取网络状态权限--uses-permission android:nameandroid.permission.INTERNET /uses-permission android:nameandroid.permission.ACCESS_NETWORK_STATE / !-- 定义应用程序的 Application 类 --application...省略/application /manifest普通权限有哪些 ACCESS_CHECKIN_PROPERTIES读取和写入“properties”表在checkin数据库中 ACCESS_LOCATION_EXTRA_COMMANDS访问额外的位置提供命令 ACCESS_NETWORK_STATE获取网络信息状态 ACCESS_NOTIFICATION_POLICY希望访问通知策略的应用程序的标记许可 ACCESS_WIFI_STATE获取当前WiFi接入的状态以及WLAN热点的信息 ACCOUNT_MANAGER通过账户验证方式访问账户管理ACCOUNT_MANAGER相关信息 BATTERY_STATS更新手机电池统计信息 BIND_ACCESSIBILITY_SERVICE请求accessibilityservice服务 BIND_APPWIDGET告诉appWidget服务需要访问小插件的数据库 BIND_CARRIER_MESSAGING_SERVICE绑定到运营商应用程序中的服务 BIND_CARRIER_SERVICES绑定到运营商应用程序中的服务 BIND_CHOOSER_TARGET_SERVICE由ChooserTargetService要求的服务 BIND_DEVICE_ADMIN请求系统管理员receiver BIND_DREAM_SERVICE由一个DreamService要求的服务 BIND_INCALL_SERVICE请求MidiDeviceService服务 BIND_INPUT_METHOD请求InputMethodService服务 BIND_MIDI_DEVICE_SERVICE由一MidiDeviceService要求的服务 BIND_NFC_SERVICE由HostApduServiceOffHostApduService要求的服务 BIND_NOTIFICATION_LISTENER_SERVICE由notificationlistenerservice要求的服务 BIND_PRINT_SERVICE由printservice要求的服务 BIND_REMOTEVIEWS通过RemoteViewsService服务请求 BIND_TELECOM_CONNECTION_SERVICE由ConnectionService要求的服务 BIND_TEXT_SERVICE由textservice要求的服务 BIND_TV_INPUT由TvInputService要求的服务 BIND_VOICE_INTERACTION由VoiceInteractionService要求的服务 BIND_VPN_SERVICE通过VpnService服务请求 BIND_WALLPAPER通过WallpaperService服务请求 BLUETOOTH连接配对过的蓝牙设备 BLUETOOTH_ADMIN发现和配对新的蓝牙设备 BLUETOOTH_PRIVILEGED配对蓝牙设备无需用户交互 BROADCAST_PACKAGE_REMOVED广播一个提示消息在一个应用程序包已经移除后 BROADCAST_SMS当收到短信时触发广播 BROADCAST_STICKY收到广播后快速收到下一个广播 BROADCAST_WAP_PUSHWAP PUSH服务收到后触发广播 CALL_PRIVILEGED拨打电话替换系统的拨号器界面 CAPTURE_AUDIO_OUTPUT捕获音频输出 CAPTURE_SECURE_VIDEO_OUTPUT捕获视频输出 CAPTURE_VIDEO_OUTPUT捕获视频输出 CHANGE_COMPONENT_ENABLED_STATE改变组件是否启用状态 CHANGE_CONFIGURATION改变配置信息 CHANGE_NETWORK_STATE改变网络状态如是否联网 CHANGE_WIFI_MULTICAST_STATE改变WiFi多播状态 CHANGE_WIFI_STATE改变WiFi状态 CLEAR_APP_CACHE清除应用缓存 CONTROL_LOCATION_UPDATES获得移动网络定位信息 DELETE_CACHE_FILES删除缓存文件 DELETE_PACKAGES删除应用 DIAGNOSTICRW到诊断资源 DISABLE_KEYGUARD禁用键盘锁 DUMP获取系统dump信息 EXPAND_STATUS_BAR扩展或收缩状态栏 FACTORY_TEST运行工厂测试模式 FLASHLIGHT访问闪光灯 GET_ACCOUNTS_PRIVILEGED访问帐户服务中的帐户列表 GET_PACKAGE_SIZE获取任何package占用空间容量 GET_TASKS获取信息有关当前或最近运行的任务 GLOBAL_SEARCH允许全局搜索 INSTALL_LOCATION_PROVIDER安装定位提供 INSTALL_PACKAGES安装应用 INSTALL_SHORTCUT创建快捷方式 INTERNET访问网络连接 KILL_BACKGROUND_PROCESSES结束后台进程 LOCATION_HARDWARE使用定位功能的硬件 MANAGE_DOCUMENTS管理文档访问 MASTER_CLEAR执行软格式化删除系统配置信息 MEDIA_CONTENT_CONTROL控制播放和内容 MODIFY_AUDIO_SETTINGS修改声音设置信息 MODIFY_PHONE_STATE修改电话状态 MOUNT_FORMAT_FILESYSTEMS格式化可移动文件系统 MOUNT_UNMOUNT_FILESYSTEMS挂载、反挂载外部文件系统 NFC执行NFC近距离通讯操作 PACKAGE_USAGE_STATS设置他的activities显示 PERSISTENT_ACTIVITY创建一个永久的Activity READ_FRAME_BUFFER读取帧缓存 READ_INPUT_STATE读取当前键的输入状态 READ_LOGS读取系统底层日志 READ_SYNC_SETTINGS读取同步设置 READ_SYNC_STATS读取同步状态 READ_VOICEMAIL读取语音邮件 REBOOT重新启动设备 RECEIVE_BOOT_COMPLETED开机自动运行 REORDER_TASKS重新排序系统Z轴运行中的任务 REQUEST_IGNORE_BATTERY_OPTIMIZATIONS请求忽略电池优化 REQUEST_INSTALL_PACKAGES请求安装包 RESTART_PACKAGES结束任务 SEND_RESPOND_VIA_MESSAGE即时的短信息回复 SET_ALARM设置闹铃提醒 SET_ALWAYS_FINISH程序在后台是否总是退出 SET_ANIMATION_SCALE设置全局动画缩放 SET_DEBUG_APP设置调试程序 SET_PREFERRED_APPLICATIONS设置应用的参数 SET_PROCESS_LIMIT设置最大的进程数量的限制 SET_TIME设置系统时间 SET_TIME_ZONE设置系统时区 SET_WALLPAPER设置桌面壁纸 SET_WALLPAPER_HINTS设置壁纸建议 SIGNAL_PERSISTENT_PROCESSES发送一个永久的进程信号 STATUS_BAR打开、关闭、禁用状态栏 SYSTEM_ALERT_WINDOW显示系统窗口 TRANSMIT_IR使用设备的红外发射器 UNINSTALL_SHORTCUT删除快捷方式 UPDATE_DEVICE_STATS更新设备状态 USE_FINGERPRINT使用指纹硬件 VIBRATE允许程序振动 WAKE_LOCK 允许程序在手机屏幕关闭后后台进程仍然运行 WRITE_APN_SETTINGS允许程序写入网络GPRS接入点设置 WRITE_GSERVICES允许程序修改Google服务地图 WRITE_SECURE_SETTINGS允许应用程序读取或写入安全系统设置 WRITE_SETTINGS允许程序读取或写入系统设置 WRITE_SYNC_SETTINGS允许程序写入同步设置 WRITE_VOICEMAIL允许应用程序修改和删除系统中的现有的语音邮件只有系统才能使用   危险权限 危险权限的定义 涵盖应用需要涉及用户隐私信息的数据或资源或者可能对用户存储的数据或其他应用的操作产生影响的区域。 例如: 读取通讯录、访问媒体和摄像机设备、读写存储器数据、获取用户位置等。如果应用声明需要这些危险权限则必须在运行时明确告诉用户让用户手动授予。 ​ 危险权限有哪些  编号权限组权限1CALENDAR (日历)READ_CALENDAR 读取日历 WRITE_CALENDAR写入日历2CAMERA (相机)CAMERA照相机3CONTACTS (联系人)READ_CONTACTS读取通讯录 WRITE_CONTACTS写入通讯录 GET_ACCOUNTS访问通讯录权限4LOCATION (位置)ACCESS_FINE_LOCATION获取位置 ACCESS_COARSE_LOCATION获取粗略定位5MICROPHONE (麦克风)RECORD_AUDIO录音6PHONE (手机)READ_PHONE_STATE读取手机状态 CALL_PHONE打电话 READ_CALL_LOG看电话记录 WRITE_CALL_LOG编写调用日志 ADD_VOICEMAIL添加语音信箱 USE_SIP 使用SIP PROCESS_OUTGOING_CALLS 过程输出调用7SENSORS (传感器)BODY_SENSORS体传感器8SMS (短信)SEND_SMS发信息 RECEIVE_SMS收信息 READ_SMS读取信息 RECEIVE_WAP_PUSH收到WAP推送 RECEIVE_MMS接收彩信9STORAGE (存储卡)READ_EXTERNAL_STORAGE读取外部存储器  WRITE_EXTERNAL_STORAGE写外部存储器 动态申请权限实例 申请单个权限实例 以获取获取打电话权限CALL_PHONE为例 第一步在清单文件中声明权限 ?xml version1.0 encodingutf-8? manifest xmlns:androidhttp://schemas.android.com/apk/res/androidpackagecom.example.apple.encryptiondemouses-permission android:nameandroid.permission.CALL_PHONE /... 第二步在代码中进行动态申请权限 public class MainActivity extends BaseActivity {Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Button btn_call findViewById(R.id.btn_call);btn_call.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {//第一步判断用户是否已经授权//ContextCompat.checkSelfPermission() 参数一context 参数二具体的权限名if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.CALL_PHONE) ! PackageManager.PERMISSION_GRANTED) {//没有授权则申请授权//ActivityCompat.requestPermissions() 参数一context 参数二申请的权限名数组 参数三请求码要求唯一值ActivityCompat.requestPermissions(MainActivity.this, new String[]{Manifest.permission.CALL_PHONE}, 1);} else {call();}}});}SuppressLint(MissingPermission)private void call() {Intent intent new Intent(Intent.ACTION_CALL);intent.setData(Uri.parse(tel:10086));startActivity(intent);}//第二步调用requestPermissions申请权限不管是否同意都会回调onRequestPermissionsResultOverridepublic void onRequestPermissionsResult(int requestCode, NonNull String[] permissions, NonNull int[] grantResults) {switch (requestCode) {case 1:if (grantResults.length 0 grantResults[0] PackageManager.PERMISSION_GRANTED) {call();} else {Toast.makeText(MainActivity.this, you denied, Toast.LENGTH_SHORT).show();}break;}} } 申请多个权限实例 获取打电话和扩展SD卡权限为例 第一步在清单文件中声明权限 ?xml version1.0 encodingutf-8? manifest xmlns:androidhttp://schemas.android.com/apk/res/androidpackagecom.example.apple.encryptiondemouses-permission android:nameandroid.permission.CALL_PHONE /uses-permission android:nameandroid.permission.READ_EXTERNAL_STORAGE/uses-permission android:nameandroid.permission.READ_PHONE_STATE/ 第二步在代码中进行动态申请权限 public class MainActivity extends BaseActivity {Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Button btn_call findViewById(R.id.btn_call);btn_call.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {//第一步看权限是否已经被申请没有则申请权限ListString permissionList new ArrayList();if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.CALL_PHONE) ! PackageManager.PERMISSION_GRANTED) {permissionList.add(Manifest.permission.CALL_PHONE);}if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.READ_PHONE_STATE) ! PackageManager.PERMISSION_GRANTED) {permissionList.add(Manifest.permission.READ_PHONE_STATE);}if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) ! PackageManager.PERMISSION_GRANTED) {permissionList.add(Manifest.permission.WRITE_EXTERNAL_STORAGE);}if (!permissionList.isEmpty()) {String[] permissions permissionList.toArray(new String[permissionList.size()]);ActivityCompat.requestPermissions(MainActivity.this, permissions, 1);} else {call();}}});}SuppressLint(MissingPermission)private void call() {Intent intent new Intent(Intent.ACTION_CALL);intent.setData(Uri.parse(tel:10086));startActivity(intent);}//第二步调用requestPermissions申请权限不管是否同意都会回调onRequestPermissionsResultOverridepublic void onRequestPermissionsResult(int requestCode, NonNull String[] permissions, NonNull int[] grantResults) {switch (requestCode) {case 1:if (grantResults.length 0) {for (int result : grantResults) {if (result ! PackageManager.PERMISSION_GRANTED) {Toast.makeText(MainActivity.this, you denied some, Toast.LENGTH_SHORT).show();finish();return;}}call();}else{Toast.makeText(MainActivity.this, 发生未知错误, Toast.LENGTH_SHORT).show();finish();}break;}} } 由于作者水平有限如果有错误和不当之处忘小伙伴指正不胜感激  参考资料 https://www.jianshu.com/p/338741725cd0 https://developer.android.google.cn/guide/topics/permissions/overview?hlzh_cn https://blog.csdn.net/m0_45695811/article/details/133851898
http://www.lakalapos1.cn/news/26741/

相关文章:

  • 分析网站网站网站开发及设计
  • 网站搜索 收录优化管理平台
  • 湖南省交通建设质量监督站网站口碑好网站建设公司
  • 桂林网站制作公司华彩山东网站建站建设
  • 兰州做网站一咨询兰州做网站公司织梦网站怎样上传到ftp
  • 盗版电影网站建设成本做化妆品网站的原因
  • 网站建设项目管理基本要求能赚钱的网站
  • 机场建设管理投资有限责任公司网站做类似淘宝网站怎么做的
  • 烟台城乡建设局网站宁波外贸公司招聘信息
  • 做一家购物网站要多少钱女生做新媒体运营是不是很累
  • 网站界面设计有哪些用ps可以做网站吗
  • 莱芜有需要制作网站的公司吗家私公司网站建设多少钱
  • 货代一般用什么网站开发客户官网招聘平台
  • 做企业平台网站成本百业网
  • 手机软件开发和网站开发权威的手机网站建设
  • 德州东海建设集团网站seo研究中心超逸seo
  • 国建设银行e路通网站申南京手机网站设计公司
  • 网站 主机动漫制作专业专升本去哪个专业
  • 中国建设银行网站首页英文网页设计作品评价
  • 青岛网站建设公司正合肥网站建设渠道
  • 永久免费建站系统如何做新网站保留域名
  • 网站发文超链接怎么做济南建站培训
  • 山东省建设监理协会网站打不开临安农家乐做网站
  • 用什么网站可以做电子书北京网站的制作设计
  • 网站如何做品牌宣传o2o网站建设资讯
  • 如何建设网站盈利平面设计培训课程学校
  • 如何做好网站的优化的监测评价网页设计自我介绍模板代码html
  • 什么是网站维护做网站去哪个公司
  • 网站后台管理模板下载网站开发报价人天
  • rar在线解压网站自己做微信优惠券需要网站