(ios) deploy issue after added an external framework

106 views
Skip to first unread message

George Zhou

unread,
Feb 21, 2018, 5:53:14 PM2/21/18
to Chromium-dev
I was able to add an external framework (opencv) to a chromium application and built it successfully. However, when I tried to deploy the app to iphone, I always got message.

"App installation failed

Could not inspect the application package."


I suspect this is associated with code signing.


Is anyone has any idea of this issue?


Thanks,

George Zhou

unread,
Feb 22, 2018, 11:50:15 AM2/22/18
to Chromium-dev
It seems like the added external framework need to be codesign. Xcode->building phases->embedded frameworks has option of code sign on copy. In gn build, is anyone know how to set this option?

Thanks

Yuke Liao

unread,
Feb 26, 2018, 2:23:24 PM2/26/18
to gyz...@google.com, Chromium-dev
For prototyping locally, I think you can hack this around by adding the opencv framework as an "extra_system_frameworks" to the "create_signed_bundle" template that creates the Chromium app bundle. You can search for "extra_system_frameworks" in this file to see how it is being used.

But if you want to land something into the repository, you should add opencv as a third party library and build it using GN rules and then link it to Chromium as a dependency.

--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/bf1e3e17-99f8-4eca-8ccc-753cd35daa19%40chromium.org.

George Zhou

unread,
Feb 26, 2018, 5:49:17 PM2/26/18
to Chromium-dev, gyz...@google.com
I codesign the frameworks that I added manually also solved this issue for prototype. Thanks for information.

George Zhou

unread,
Aug 19, 2021, 11:50:36 AM8/19/21
to anand agarwal, Chromium-dev
Hi Anand,

It was three years ago and I haven't touched iOS for the past 2.5 year.  I really cannot recall the details. Sorry for that.

Good luck.

George

On Thu, Aug 19, 2021 at 7:42 AM anand agarwal <anand.i...@gmail.com> wrote:
Hi George,

Could you please share some info, how did u solve this issue by using create_signed_build. I am trying to used this template but no success so far.
I have similar scenario: Added custom framework from outside, without using DEPS entry. I copied it to the inside Frameworks/ folder in App bundle. It works fine on simulator, but as soon as I try to run on device, I get some error : installation failed. I know that we need to embed and sign it, embed is working fine, but don't how to inject signin part in this flow.
Using below script to solve embed part:

config("CustomFrameworks_config") {

 

  framework_dirs = [ "//ios/chrome/app/CustomFrameworks/CustomApps/Device" ]

  

  frameworks = [

    "iOSCustom1.framework",

    "iOSCustom2.framework",

  ]

}

bundle_data("CustomFrameworks") {

     


  sources = [ "//ios/chrome/app/CustomFrameworks/CustomApps/Device/iOSCustom1.framework",

             "//ios/chrome/app/CustomFrameworks/CustomApps/Device/iOSCustom2.framework", ]

 

  outputs = [ "{{bundle_resources_dir}}/" +

              "Frameworks/{{source_file_part}}" ]

              

  public_configs = [

   ":CustomFrameworks_config",

   ]

  


Regards,
Anand

anand agarwal

unread,
Aug 19, 2021, 9:44:27 PM8/19/21
to Chromium-dev, George Zhou
Hi George,

Could you please share some info, how did u solve this issue by using create_signed_build. I am trying to used this template but no success so far.
I have similar scenario: Added custom framework from outside, without using DEPS entry. I copied it to the inside Frameworks/ folder in App bundle. It works fine on simulator, but as soon as I try to run on device, I get some error : installation failed. I know that we need to embed and sign it, embed is working fine, but don't how to inject signin part in this flow.
Using below script to solve embed part:

config("CustomFrameworks_config") {

 

  framework_dirs = [ "//ios/chrome/app/CustomFrameworks/CustomApps/Device" ]

  

  frameworks = [

    "iOSCustom1.framework",

    "iOSCustom2.framework",

  ]

}

bundle_data("CustomFrameworks") {

     


  sources = [ "//ios/chrome/app/CustomFrameworks/CustomApps/Device/iOSCustom1.framework",

             "//ios/chrome/app/CustomFrameworks/CustomApps/Device/iOSCustom2.framework", ]

 

  outputs = [ "{{bundle_resources_dir}}/" +

              "Frameworks/{{source_file_part}}" ]

              

  public_configs = [

   ":CustomFrameworks_config",

   ]

  


Regards,
Anand

On Tuesday, 27 February 2018 at 04:19:17 UTC+5:30 George Zhou wrote:
Reply all
Reply to author
Forward
0 new messages