精华内容
下载资源
问答
  • ipa重新签名

    2016-04-05 22:37:00
    两种方式: 1. GitHub上下载现成的工具,下载...2. 使用命令行打包: http://www.cocoachina.com/bbs/read.php?tid=181236 两种方法均测试通过。 方式二在我电脑上的命令如下: rm -rf Payload/iHe

    两种方式:

    1. GitHub上下载现成的工具,下载地址:

    https://github.com/maciekish/iReSign


    2. 使用命令行打包:

    http://www.cocoachina.com/bbs/read.php?tid=181236


    两种方法均测试通过。


    方式二在我电脑上的命令如下:

    1. rm -rf Payload/iHealth.app/_CodeSignature
    2. cp /Users/jing/Library/MobileDevice/Provisioning\ Profiles/3c21eee0-1fd4-410d-97c9-3c7ab80b667d.mobileprovision Payload/iHealth.app/embedded.mobileprovision
    3. /usr/bin/codesign -f -s "iPhone Distribution: iHealth Lab Inc." --resource-rules Payload/iHealth.app/ResourceRules.plist Payload/iHealth.app
    4. zip -r New_MYAPP.ipa Payload
    5. Success!!!


    展开全文
  • 今天逯同事说,可以把狂挂传奇打包的项目写成一个脚本,这样就不用担心证书有时不能用的问题了。 然后,像我这么好学的学生,当然要去执行了。(其实,以前他给的建议我都只是听听而已,这次是因为想学点东西了,...

    今天逯同事说,可以把狂挂传奇打包的项目写成一个脚本,这样就不用担心证书有时不能用的问题了。

    然后,像我这么好学的学生,当然要去执行了。(其实,以前他给的建议我都只是听听而已,这次是因为想学点东西了,所以冷静了一把。然后一下午都在鼓捣这个东西)

    当这件事情完成后,再回头看,发现代码非常简单,实现的功能也很小,但是对于新手来说,收获还是很多的。

    主要的功能实现步骤如下:

    1.更新plist里面的内容;

    2.将新的plist转移至包的payload文件中(也就是ipa包解压完的东东:将ipa文件的后缀改为zip,然后解压,会有一个Payload文件);

    3.将这个Payload文件压缩(这个地方比较重要,遇到两个难点);

    4.将Payload.zip进行ipa重命名,命名为自己想要的。


    对于我这个新手来说,所有的Linux语言都是陌生的,从来没有用过,例如解压、压缩、移动、重命名(包括后缀),都不知道。现在就先罗列一下这些简单的小命令,

    帮助新手理解并加强记忆。

    1.解压:

    unzip -d (要解压到的地址) (原压缩文件.zip的地址)
    比如:unzip -d /Desktop/TESTA /Desktop/testB.zip
    四个字符之间用空格隔开。后两个直接拖拽即可。一般(要解压到的地址)设置为一个空文件夹,(原压缩文件.zip的地址)是原zip文件,直接拖拽。

    这样,zip里面的东西,就会解压到空文件夹里面了。当一个ipa包不能安装或者出现乱码时,用这种方式解压,可以看清里面到底是哪个地方变成了乱码。

    2.压缩:

    zip -qr (要压缩的压缩包的名字及形式) (原要压缩的文件)
    
    比如:zip -qr /Desktop/Payload.zip Payload/


    3.移动

    mv (要移动的文件) (要移动的位置)
    mv KY_Channel.plist Payload/TestOfDuDai.app/
    
    

    4.重命名

    mv (被重命名的文件) (最终命名的结果)
    比如:mv Payload.zip Payload.ipa  这个是更改了文件的后缀

    这个小脚本用到的小知识点就用到了这些,以后有需要还会在罗列。

    不过,虽然这个脚本比较小,但是,在制作的过程中,还是遇到了很多的难题,比如,

    1.问题:路径冗余

    问题现象:压缩完的文件夹解压后不是直接Payload文件夹,而是嵌套了很多父文件夹,如电脑名称、Desktop等,这样,在重新签名和安装时,是失败的。

    解决办法:将当前目录放置在一起。运维庆敏的做法是,在一开始,就放置在桌面上,下面所有的操作都是在桌面上进行的。

    进入桌面的方法是:

    cd /Users/KuaiYong/Desktop/

    这样,在解压或者压缩时,就不会被嵌套很多层了。

    2.问题:脸皮

    问题现象:遇到不会的,不敢去问别人。许多问题出现时,思前想后的才去问别人。

    解决办法:自己搜不到或者解决不出来,就立马去问别人,不浪费时间


    总的来说,今天下午过的比较充实,丰富了自己的经验,开启了一片新的天地,对自己的努力比较满意。也许是因为坚持跑步的原因,希望自己能够坚持下去。加油!!




    展开全文
  • ios app 开发中ipa重新签名步骤介绍

    千次阅读 2016-02-24 18:15:19
    作为一个app应用程序开发者,在app应用程序在苹果商店上架前总需要将安装包安装到ios机器上进行测试,这个时候我们就需要打包in house版本的ipa了,打包in house实际上是一个将ipa应用程序重新签名的一个过程。...

    http://blog.csdn.net/a351945755/article/details/46472523

    作为一个app应用程序开发者,在app应用程序在苹果商店上架前总需要将安装包安装到ios机器上进行测试,这个时候我们就需要打包in house版本的ipa了,打包in house实际上是一个将ipa应用程序重新签名的一个过程。一般来...

       作为一个app应用程序开发者,在app应用程序在苹果商店上架前总需要将安装包安装到ios机器上进行测试,这个时候我们就需要打包in house版本的ipa了,打包in house实际上是一个将ipa应用程序重新签名的一个过程。一般来说打包in house需要以下东西:MAC机器,一般打包ipa都是在MAC机上打包的,一个后缀名为.mobileprovision概要配置文件,一个后缀名为P12的证书,还有一个后缀名为.cer的证书,还有就是你想重新签名的ipa.

      如何给ipa重新签名

    步骤1 : 
    unzip YourApp.ipa
    步骤2:  
    rm -rf Payload/YourApp.app/_CodeSignature
    步骤3:  
    cp InHouse.mobileprovision Payload/YourApp.app/embedded.mobileprovision
    步骤4:  
    /usr/bin/codesign -f -s "iPhone Distribution: YourCompanyName" --resource-rules Payload/YourApp.app/ResourceRules.plist Payload/YourApp.app
    步骤5: 
    zip -r YourApp_inhouse.ipa Payload


    * InHouse.mobileprovision 是你要用来签名的provision文件
    * iPhone Distribution: YourCompanyName 是指该签名对应的证书的名字。这个可以在keychain中找到


    1. 先通过TestFlight安装build
      2. 再把build通过ifanbox把build导出来成为ipa文件
      3. 下面就需要把ipa文件重新签名,方法有两种
      方法一:
      利用商业化工具签名,SeeTest支持把ipa重新签名,签名需要提供 provision文件,和开发者证书私钥和密码
      方法二:
      自己想办法签,代码参考如下

    unzip app.ipa
    rm -rf Payload/MyApp.app/_CodeSignature/
    cp ~/Downloads/AdHoc.mobileprovision Payload/MyApp.app/embedded.mobileprovision
    codesign -f -s "iPhone Distribution: Company Certificate" --resource-rules Payload/MyApp.app/ResourceRules.plist Payload/MyApp.app
    zip -qr app-resigned.ipa Payload/

      其中"iPhone Distribution: Company Certificate"是你证书的common name, 别的没什么要注意的。
      方法三:
      网上有推荐用一个叫iresign的工具签名,其实挺好用,该工具只能工作在mac下面
      个人推荐用方法三,但是要注意一个问题,就是iresign需要你提供四个信息,一个是ipa文件,一个是provision文件,一个是证书的common name,最后一个是entitlements.plist文件。前三个想必大家都懂,但是第四个之前真没听过,网上资料也有限。
      请用下面的方法生成entitlements.plist文件
    【  需要cd到Payload文件下,才可以生成】
    /usr/libexec/PlistBuddy -x -c "print :Entitlements " /dev/stdin <<< $(security cms -D -i production.app/embedded.mobileprovision) > Entitlements.plist
    /usr/libexec/PlistBuddy -c 'Set :get-task-allow true' Entitlements.plist

      生成之后,再利用iresign,就可以做出一个可以被xcode instrument的ipa包了。

    展开全文
  • 作为一个app应用程序开发者,在app应用程序在苹果商店上架前总需要将安装包安装到ios机器上进行测试,这个时候我们就需要打包in house版本的ipa了,打包in house实际上是一个将ipa应用程序重新签名的一个过程。...

    作为一个app应用程序开发者,在app应用程序在苹果商店上架前总需要将安装包安装到ios机器上进行测试,这个时候我们就需要打包in house版本的ipa了,打包in house实际上是一个将ipa应用程序重新签名的一个过程。一般来说打包in house需要以下东西:MAC机器,一般打包ipa都是在MAC机上打包的,一个后缀名为.mobileprovision概要配置文件,一个后缀名为P12的证书,还有一个后缀名为.cer的证书,还有就是你想重新签名的ipa.

      如何给ipa重新签名

    步骤1 : 
    unzip YourApp.ipa
    步骤2:  
    rm -rf Payload/YourApp.app/_CodeSignature
    步骤3:  
    cp InHouse.mobileprovision Payload/YourApp.app/embedded.mobileprovision
    步骤4:  
    /usr/bin/codesign -f -s "iPhone Distribution: YourCompanyName" --resource-rules Payload/YourApp.app/ResourceRules.plist Payload/YourApp.app
    步骤5: 
    zip -r YourApp_inhouse.ipa Payload


    * InHouse.mobileprovision 是你要用来签名的provision文件
    * iPhone Distribution: YourCompanyName 是指该签名对应的证书的名字。这个可以在keychain中找到

     

    听说    企业证书打完包  进行   重新签名后的 ipa  可以安装在 任何设备上,而企业的 ipa  似乎只能安装在 有限的数量的设备上。有机会试下。

     

    说法二:

     iOS证书学习推荐博客代码签名探析,本文重点在于介绍ios8.1.3系统ipa包重签名(如企业证书)无法安装的问题。苹果在iOS8.1.3系统以后加强了对ipa安装包签名的验证,主要区别在于ipa唯一标识在原有Bundle Identifier的基础上增加了证书ID,也就说安装包和手机上已安装APP的Bundle Identifier即使一致,如果两者签名的证书ID不相同,那么安装包也无法正常安装。证书ID是什么?

    图中方框里字符串就是证书ID,升级后的ipa标识就是证书ID+BundleID,只有两者完全匹配,安装包才能覆盖安装,否则就会提示安装失败。解决办法就是卸载安装包,重新安装!

    目前,重签名主要用于企业证书重签名个人证书发布的ipa包,包括各种助手及企业内测包的发布等。在重签名前,让我们先看看一个完整的ipa包有哪些与证书相关的东西!打开ipa包,会发现_CodeSignature和embedded.mobileprovision两个文件

    • _CodeSignature,ipa包签名文件
    • embedded.mobileprovision,证书配置文件

    因此,替换上面两个文件就解决了ipa重签名的主要问题。此外,代码签名探析文中还提到entitlements.plist授权文件,重签名时也需要处理。按照下图内容创建plist文件,输入相关信息。

     

    整个签名过程如下(文件路径自定义)

    1、解压ipa安装包

    2、替换证书配置文件(文件名必须为embedded,不得自定义)

    3、重签名(certifierName为重签名证书文件名,可以加证书ID后缀)

    4、打包

    很多朋友在重签名时会忽略第二步或者没有指定entitlements.plist,都会造成ipa包安装失败。

     

    说法三:

     

    准备

      在重签名之前要做一些准备工作。

      1.首先要下载并安装Xcode,里面有个codesign_allocate程序,在安装时/usr/bin中会多一个codesign的程序,该程序用于ipa包的签名。

      2.企业证书的Certificate文件,私钥文件,Provisioning Profile文件等。注意企业证书一定要是iOS Distribution的类型,不能是iOS Development。

     

      重签名步骤

      1.解压ipa

      解压ipa得到Payload/[App name].bundle,打开bundle。

      2.删除旧的ipa签名信息

      删除bundle中的_CodeSignature文件夹,也就是删除之前ipa的签名信息。

      3.更换证书

      将bundle中旧的Provisioning Profile删除,用我们自己的企业证书的Provisioning Profile替代。

      注意,要将ipa包中我们的企业证书改名为embedded.mobileprovision。

      4.修改bundle内容

      此时我们可以尽情地修改bundle中的内容,例如添加一个动态库,删除一张图片等。

      注意:如果要往bundle中添加动态库,必须要先将其压缩成zip文件,在程序启动时将其解压到Documents目录下再dlopen,否则程序在启动时加载动态库文件会卡死在那里。

      5.重新签名

      在完成bundle内容的修改后,需要通过/usr/bin/codesign程序重新签名,命令如下:

      /usr/bin/codesign -f -s "iPhone Distribution: YourCompanyName" --resource-rules Payload/ MYAPP.app/ResourceRules.plist Payload/ MYAPP.app

      其中iPhone Distribution可以从钥匙串访问中获取,就是企业证书的名字,例如下面的"iPhone Distribution:XXXXXXXXXX":

     

     

      具体的命令示例:

      codesign -f -s "iPhone Developer: XXXXXXXXXX" --resource-rules Payload/NdCP_Game_Demo.app/ResourceRules.plist Payload/NdCP_Game_Demo.app

      这条命令的意思是:使用keychain中"iPhone Developer: XXXXXXXXXX"标识的证书,根据Payload/NdCP_Game_Demo.app/ResourceRules.plist文件中的规则进行签名,如果ipa包中已经存在签名,那么将被替换,该过程生成的_CodeSignature目录将存放在Payload/NdCP_Game_Demo.app目录下。

     

      在命令执行后,在bundle中会生成一个新的_CodeSignature目录,里面包含了新的签名信息。

     

      6.重新打包成ipa

      在完成上述工作后,可以生成新的ipa进行发布。示例命令如下:

      zip -r ResignTest.ipa Payload

      # 注意Payload后面不能有“/”

      ‍ 

      7.发布

      经过打包发布测试,得出结论:对修改了ipa包内容和其中的签名后,重签名的ipa文件可以在非越狱设备和越狱设备上成功安装。注意,是通过带有SSL证书的网站和Apple系统安装的(企业内部分发程序),不是通过PP助手那样的第三方工具安装的。

    展开全文
  • ipa重新签名

    千次阅读 2018-01-03 12:03:56
    ipa重新签名软件环境 Mac: v10.12.6 (16G29) ruby: v2.3.4 rvm: v1.29.3 sigh: v2.71.1 Xcode: v9.2 应用场景主要解决因重复打包导致测试同学回归测试的包和上传App Store的包不一致的问题。App开发测试流程 分析...
  • 作为一个app应用程序开发者,在app应用程序在苹果商店上架前总需要将安装包安装到ios机器上进行测试,这个时候我们就需要打包in house版本的ipa了,打包in house实际上是一个将ipa应用程序重新签名的一个过程。...
  • x-code打包Ipa

    千次阅读 2017-10-18 10:08:43
    由于一不小心Itunes升了级,原本利用ITunes应用的打包方式不能用了,只能利用x-code打包,于是又重新研究了下,下面将步骤写下,第一步将Debug改成Release, 第二步 第三步 第四部 第五步,配置文件有...
  • 苹果ipa应用重新签名

    2016-12-19 11:40:00
    以前还真不知道原来已经打包好的.ipa可以通过某种方法更换证书。今天是周一刚到公司就遇到了这个问题,还好有万能的百度。 下面大概的描述下具体的步骤...
  • ipa文件重新签名的方法

    万次阅读 2016-03-28 15:27:09
    今天要给大家介绍两种app重新签名的方法, 做一下记录方便需要的朋友。 1. 通过Xcode重答名  ...今天要介绍的是打包后,不同Mac上重新签名的方法,即传播Xcode Archive. 在Xcode中archive成
  • 1.打包的步骤: 点击Product->Archive;然后正常编译出来以后,一些常规设置,选择证书 添加apk到iPhone手机,首先打开XCode,然后选择Windows->Devices and Simulators 三、报错集锦 1.证书问题 说明你的手机...
  • 虽然网上很多打包流程,但是也有很多有些时间了,还有的不是很详细,我就重新做一个详细流程 需要的东西:开发者账号(语文学的不好,请见谅) 1、首先登陆开发者平台(https://developer.apple.com/account) 2、...
  • iResign重新签名ipa文件

    千次阅读 2014-05-17 15:26:44
    iResign ... 原理: 这个不越狱的原理在于,通过iResign将已经打包签名好的IPA重新以你自己的开发者账户签名,通过自身的开发者签名和Provision来进行安装到手机中。
  • 1、将ipa包后缀改为.zip,解压,...把修改后的文件重新压缩成zip,把zip改为ipa,替代原来的ipa,就可以了。 解决这个问题的主要原因是,怀疑打包的时候发现工程下的plist文件中的bundle identifier和ipa的不一样。...
  • IOS APP 重新打包命令

    2015-03-11 18:08:00
    步骤1:unzipYourApp.ipa步骤2:rm-rfPayload/YourApp.app/_CodeSignature步骤3:cpInHouse.mobileprovisionPayload/YourApp.app/embedded.mobileprovision步骤4:/usr/bin/codesign-f-s"iPhoneDistributi...
  • 当有一点小改动需要重新出包时,就需要人工再次重复打包过程,这样的工作,对于我们写程序的人来说,完成可以用程序搞定。所以,我们就应该结合我们的实际工作情况,做我们自己的自动打包工具。下面,我们就来对于...
  • 对方手机 UDID 已经添加,重新打包项目成 ipa 文件给对方下载安装,对方反应:点击App 下载,弹出提示窗提示是否下载 -》点击下载--》提示窗消失--》接着无任何反应。 解决:重新开机后,App 成功安装(出现在...
  • 原帖:http://www.shaoqun.com/a/184880.aspx 我关闭了bitcode,再重新生成ipa上传,下载安装后就不会闪退了。
  • Building Scene 是Unity在打包场景资源中,Building ...因为Resources的每次出版本都会重新打资源。这样可以将没修改的资源打包耗时省下来。 2)配置个好的电脑,把CPU换个好点的,硬盘换成SSD的。 以上两点能节
  • ipa重新签名:https://blog.csdn.net/andy_jiangbin/article/details/77527359 ipa重签名工具:https://www.jianshu.com/p/7d352a648d13 ipa手动重新签名:https://www.jianshu.com/p/41aec5e53c93 ...
  • 修改ipa

    千次阅读 2015-06-19 14:33:31
    目前遇到一个需求:给定一个ipa包,需要修改包里面的plist文件,在重新签名打包。 http://www.modelmetrics.com/tomgersic/codesign-re-signing-an-ipa-between-apple-accounts/ ...
  • 请更新react-native-update到最新版本后重新打包上传。 at getIpaInfo (/usr/local/lib/node_modules/react-native-update-cli/lib/utils/index.js:101:11) at 192:BTHot edz$ </p><p>该提问来源于开源项目ÿ...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 129
精华内容 51
关键字:

ipa重新打包