'写在前面的话'
这些是我对iOS面试时会碰到的问题的解决方法,整理出来分享给大家,有些错误不要
笑了,希望对大家有所帮助。大家有更好的解决办法也欢迎沟通交流。
一直以来都有写点儿东西的想法,就从笔记、从阅读开始吧,加油!'

1、基础概念

Bundle identifier就是应用的标识符,表明应用和其他App的区别。
Bundle ID唯一地定义每个App。 它在Xcode中指定。 单个Xcode项目可以有多个目标,因此可以输出多个应用程序。 一 个常见的用例 - 具有lite / free和pro / full版本或品牌多种方式的应用程序。

app id是应用商店取的,效果也是一样的。
App ID是一个由两部分组成的字符串,用于标识来自单个开发团队的一个或多个应用程序。 该字符串由一个Team ID和一个Bundle ID搜索字符串组成,句点(。)将这两个部分分开。

Team ID由Apple提供,对于特定开发团队是唯一的,而开发人员提供Bundle ID搜索字符串,以匹配单个应用程序的Bundle ID或一组应用程序的Bundle ID。
由于大多数用户将App ID视为字符串,因此他们认为它可与Bundle ID互换。 在成员中心中创建App ID后,您只能使用 与应用程序包的Bundle ID匹配的App ID Prefix。
<meta charset="utf-8">


2、下面从几个方面来简单介绍下吧!!

什么是 Bundle ID ?Bundle ID格式 ?如何创建Bundle ID ?Bundle ID 怎么查 ?常见的 Bundle ID ?

什么是 Bundle ID ?

Bundle ID 「Bundle identifier」也叫 App ID 或者应用 ID,

是每一个 ios 应用的唯一标识,就像一个人的身份证号码;

申请 ios 证书、打包 ipa 和在 itunesconnect 创建 App 都要用到 App ID, 整个 App 上架流程就是靠这个 App ID 关联在一起。

无论代码怎么改,图标和应用名称怎么换,只要 bundle id 没变,ios 系统就认为这是同一个应用。

每开发一个新应用,首先都需要先去创建一个 bundle id。

bundle id 分为两种:

  • Explicit App ID「明确的 App ID」,一般格式是:com.company.appName;这种 id 只能用在一个app上,每一个新应用都要创建并只有一个。
  • Wildcard App ID「通配符 App ID」, 一般格式是:com.domainname.* ;这种 id 可以用在多个应用上,虽然方便,但是使用这种id的应用不能使用通知功能,所以不常用。
安卓系统是 Package name,是Android系统中是判断一个 App 的唯一标识;
ios 是 bundle id,android 是 packageName,
一般情况下都叫 bundle ID 或者 App ID,默认大家都知道说的是个啥;由于苹果和谷歌的原因,同一个应用的 android packageName 和 ios bundle id 不同,
比如,微信:
ios bundle id 是:com.tencent.xin
android packageName 是:com.tencent.mm

Bundle ID格式 ?

App ID 的格式为:com.company.appName 比如微信ios的是 com.tencent.xin ,一般好认、好记就行。但其实情况主要是看申请那个人的心情。

如何创建 Bundle ID ?

创建 Bundle ID 唯一标示符 App IDs

ios:https://developer.apple.com/account

android:https://developer.android.google.cn/studio

在Eclipse中只有package name的概念,没有application ID。
而在Android Studio 中把package name 拆分为了两部分package name和application ID。
Android Studio 中 application ID 和 Eclipse 中的 package name 代表了应用的唯一性,
如果在设备中和市场中已安装过应用,下次升级安装时application ID必须保持一致,
如果更换了application ID,设备和市场会认为该应用为一个新的应用。

Bundle ID 怎么查 ?

技术有生产工具,看起来很轻松。对一般用户来说,比较麻烦;

android 的,一些手机上查看设置,正在运行的应用可以看见;

可以在七麦上看,例如微信:

https://www.qimai.cn/andapp/baseinfo/appid/9

ios的,没找到好方法一般百度,然后通过下面链接验证:

根据bundle ID获取App Store的App信息:https://itunes.apple.com/lookup?bundleId=你APP的Bundle ID

返回这样一个txt说明是对的:

image

常见的 Bundle ID ?

应用:苹果 - 安卓

微信:com.tencent.xin - com.tencent.mm

QQ: com.tencent.mqq - com.tencent.mobileqq

今日头条:com.ss.iphone.article.News - com.ss.android.article.news


3、总结

App ID 是一个组合字符串,它包括两个部分,一个是开发团队的 ID,另一个是标识应用的 Bundle ID,它们之间是用点隔开的。开发团队的 ID 是苹果公司提供给开发者的,这个 ID 可以唯一标识一个开发团队;Bundle ID 是开发者自定义的唯一标识一个应用的。一个团队的 ID 和不同的 Bundle ID 组合可以得到不同的 App ID,这个 App ID 就可以标识该团队的不同的应用,开发者需要通过 App ID 来使自己的应用可以获取丰富的苹果服务。
Bundle ID 也就是 App ID 的后半部分,是一个 App 应用的唯一标识符,由开发者自定义,可以在 Xcode 工程中查看和设置(正式开发中一旦定义了是无法修改的,只能新建一个新的应用),在 Xcode 中全称叫作 Bundle identifier。

例如,在同一个工程中,发布时可能会有试用版和 Pro 版,或者免费版和付费版,它们可以通过设置不同的 Bundle ID 来区分。另外,如果让某个工程 A 运行安装到手机设备上,Bundle ID 假设为「team.test」,然后打开另外一个工程 B,将工程 B 的 Bundle ID 也设置为「team.test」,然后运行安装到同一个设备,那么会发现之前工程 A 安装的应用被覆盖掉了,这也证明了 Bundle ID 是一个应用的唯一标识。

文章来源:https://www.zhihu.com/search?type=content&q=App%20ID%20%E5%92%8CBundle%20ID%20


谢谢你长的这么好看,还关注我!!!点个赞呗!!

这就是响应链相关的点,如果有什么不对的请留言提示,然后有什么别的需要改进的提示请联系我我会及时补充~

over.over.

android 无appid分享_App ID 和Bundle ID 有什么不同?ios面试攻克篇(六)相关推荐

  1. android shareSDK 微博分享案例

    [置顶] android shareSDK 微博分享案例 分类: Android2014-10-10 08:57 11694人阅读 评论(4) 收藏 举报 android shareSDK 微博分享案 ...

  2. android 实现微信分享

    微信分享有2种方式: 集成微信分享SDK实现分享功能 调用系统原生的分享实现分享功能 集成微信分享SDK实现分享功能 微信开放平台 需要先注册开发这账号 创建应用 创建应用注意事项 应用官网:可以随便 ...

  3. Android解惑 - 为什么要用Fragment.setArguments(Bundle bundle)来传递参数

     Android解惑 - 为什么要用Fragment.setArguments(Bundle bundle)来传递参数 时间 2014-04-19 23:05:55 CSDN博客 原文  http ...

  4. android开发微信分享隐藏logo,前两天刚刚做了微信分享自定义logo和文字,做个标记,从零开始记录...

    首先要有一个认证过的公众号,才会有权限 打开微信的jsskd 使用说明 在页面中引入微信的js文件 引入后 配置config wx.config({ debug: true, // 开启调试模式,调用 ...

  5. Android截屏分享

    最近项目需要实现Android截屏分享功能,包括Android截屏获取图片.将图片保存到本地.通知系统相册更新.通过微信.QQ.微博分享截屏图片,本篇博客作为总结回顾. 一.Android截屏获取图片 ...

  6. android 程序a启动程序b的权限,android app微信分享

    android app微信分享 积分: 22 智慧币 积分: 2 智慧币 [0.67元 ] 包含内容: 源码,全套工具 详情描述 如遇视频不清晰,请最大化观看演示 以下仅列出部分功能,全部功能请至官网 ...

  7. android 巧妙利用反射机制获取控件id,避免大量冗杂的findviewbyid和butterknife注解

    android 巧妙利用反射机制获取控件id,避免大量冗杂的findviewbyid和butterknife注解 一.反射机制概述 Java 反射机制是在运行状态中,对于任意一个类,都能够获得这个类的 ...

  8. android开发qq分享图片,android qq分享图片_android qq分享sdk_android qq分享

    AndroidQQ空间分享博客分类:Android分享先上图:QZoneShareActivity.java:Java代码packagecom.cz.hello.activity;importjava ...

  9. Android快速第三方分享

    第一步:在module的build.gradle添加apply from: '../MobSDK.gradle' 第二步:在根目录的build.gradle添加classpath 'com.mob.s ...

最新文章

  1. python语言入门书籍-Python入门书籍有哪些?
  2. String , StringBuffer 和 StringBuilder 区别
  3. Sql Server 连接池及其用法
  4. lombok和maven_Lombok,AutoValue和Immutables,或如何编写更少,更好的代码返回
  5. python爬虫更改ip_Python小说爬虫,有目录,有文字极简处理,还有IP解锁方式
  6. urllib、requests库整理
  7. 电商优秀设计作品展示
  8. java 服务端重复提交_java 服务器端验证重复提交
  9. 联想高校AI精英挑战赛中大收官,“人工智能眼科机器人”获全国总决赛最后入场券
  10. mysql数据库1129错误
  11. 苹果Safari中保存的密码如何导入Chrome浏览器?
  12. The stacking context
  13. 修复Linux系统内核TCP漏洞,Linux 内核中TCP SACK机制远程Dos漏洞处理方法(CVE-2019-11477) | 聂扬帆博客...
  14. k3系统 中间层服务器,金蝶k3中间层服务器如何设置
  15. 什么是决策!决策的定义!决策的本质!大数据决策定义!
  16. Java中占位符的实战运用
  17. go kafka 配置SASL认证及实现SASL PLAIN认证功能
  18. YUV 420 444 421 422 的正解(转载)
  19. 判断手机是否处于静音、震动、正常模式
  20. 跨站脚本攻击实例解析

热门文章

  1. TensorFlow MNIST AlexNet
  2. WebAssembly,Web的新时代
  3. 记一种数据库水平扩展的技巧
  4. 比 Redis 快 5 倍的中间件,KeyDB
  5. dart系列之:dart中的异步编程
  6. Kafka单机、集群模式安装详解(一)
  7. Jedis与Redisson选型对比
  8. 走进Java中的持有对象(容器类)之一 容器分类
  9. 容器源码解析之LinkedHashMap(九)
  10. 大数据图数据库之MapReduce用于图计算