Advertise here




Advertise here

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Must create projects while offline

SpiffersSpiffers Posts: 19New Users *
edited August 2015 in iOS SDK Development
Due to some strict regulations from a client, a project has to be created completely offline. The workstation comes with pre-installed Xcode 6.1, and work on the iMac is only possible in a enclosed room without any connections to the internet. Using a USB-stick, memory card, diskdrive or any portable storage device is impossible, access to the workspace goes through security with pad-down and scanning for electronic devices. Only way of "importing" data is through plain old printouts. But nothing goes out of the room, no paper, no nothing. I have a locked down iPhone 6+ to run the code on, but it has no coverage, no internet at all.
So, what am I gonna do? I hope its possible to be done, I have told the client it can be done, but I guess I should have done better research. I have not been successful till now, so I really hope someone here could tell me how.
Im asking for help here, because this problem probably has a solution found outside the mainstay developer forums like devforum@apple or stackoverflow.
I need to fool Xcode somehow to create the project with an app id thats not verified by the Apple servers, and also build it on the device somehow.

BTW, for the curious ones, yes, the project is for a countrys armed forces, not NSA/CIA or anything cool like that. Its not for spying, its for some agumented reality.
Post edited by Spiffers on
Tagged:

Replies

  • dev666999dev666999 Posts: 3,582New Users @ @ @ @ @
    edited August 2015
    Spiffers wrote: »
    Due to some strict regulations from a client, a project has to be created completely offline. The workstation comes with pre-installed Xcode 6.1, and work on the iMac is only possible in a enclosed room without any connections to the internet. Using a USB-stick, memory card, diskdrive or any portable storage device is impossible, access to the workspace goes through security with pad-down and scanning for electronic devices. Only way of "importing" data is through plain old printouts. But nothing goes out of the room, no paper, no nothing. I have a locked down iPhone 6+ to run the code on, but it has no coverage, no internet at all.
    So, what am I gonna do? I hope its possible to be done, I have told the client it can be done, but I guess I should have done better research. I have not been successful till now, so I really hope someone here could tell me how.
    Im asking for help here, because this problem probably has a solution found outside the mainstay developer forums like devforum@apple or stackoverflow.
    I need to fool Xcode somehow to create the project with an app id thats not verified by the Apple servers, and also build it on the device somehow.

    BTW, for the curious ones, yes, the project is for a countrys armed forces, not NSA/CIA or anything cool like that. Its not for spying, its for some agumented reality.

    I just disconnected my phone from the internet. And shut down my router, so that I have no internet service.

    I then loaded up an old project onto my device. It ran fine. No internet connection is needed.

    If you need a bundle ID, you can most likely use an old one, and use that temporarily for your project.

    Unless I am missing something, I don't quite see the problem.
  • Arty TalesArty Tales Posts: 419Registered Users @ @
    I hope you have excellent coding skills. How will you bug test given the circumstances?
  • SpiffersSpiffers Posts: 19New Users *
    dev666999 wrote: »

    I just disconnected my phone from the internet. And shut down my router, so that I have no internet service.

    I then loaded up an old project onto my device. It ran fine. No internet connection is needed.

    If you need a bundle ID, you can most likely use an old one, and use that temporarily for your project.

    Unless I am missing something, I don't quite see the problem.

    Yeah, using an old bundle ID could work, but then I would have to transfer the stuff somehow to the Mac. So thats not an option.
    Arty Tales wrote: »
    I hope you have excellent coding skills. How will you bug test given the circumstances?

    I have to run it on the device thats locked in place within the secure room. There is no way Im getting any internet access there.

    Im pretty good with Swift, so I dont need access to any outside resources. The SDK documentation will be on the workstation, and if I should have any problem with some code, I can recreate it on my Mac at work, test it there, print it on paper, and re-type the stuff when I get to the secure facility.
    They have hired an engieneer from another company who also has the required security clearance, and he/she is going to verify the code I write. I dont know who that person is, or the company he/she is working at, and will not meet that person, and he/she does not know me either.
    Its a really weird way of working, but hey, its a challenge, so bring it on ;)
  • dev666999dev666999 Posts: 3,582New Users @ @ @ @ @
    Spiffers wrote: »
    Due to some strict regulations from a client, a project has to be created completely offline. The workstation comes with pre-installed Xcode 6.1, and work on the iMac is only possible in a enclosed room without any connections to the internet. Using a USB-stick, memory card, diskdrive or any portable storage device is impossible, access to the workspace goes through security with pad-down and scanning for electronic devices. Only way of "importing" data is through plain old printouts. But nothing goes out of the room, no paper, no nothing. I have a locked down iPhone 6+ to run the code on, but it has no coverage, no internet at all.
    So, what am I gonna do? I hope its possible to be done, I have told the client it can be done, but I guess I should have done better research. I have not been successful till now, so I really hope someone here could tell me how.
    Im asking for help here, because this problem probably has a solution found outside the mainstay developer forums like devforum@apple or stackoverflow.
    I need to fool Xcode somehow to create the project with an app id thats not verified by the Apple servers, and also build it on the device somehow.

    BTW, for the curious ones, yes, the project is for a countrys armed forces, not NSA/CIA or anything cool like that. Its not for spying, its for some agumented reality.
    Spiffers wrote: »
    dev666999 wrote: »

    I just disconnected my phone from the internet. And shut down my router, so that I have no internet service.

    I then loaded up an old project onto my device. It ran fine. No internet connection is needed.

    If you need a bundle ID, you can most likely use an old one, and use that temporarily for your project.

    Unless I am missing something, I don't quite see the problem.

    Yeah, using an old bundle ID could work, but then I would have to transfer the stuff somehow to the Mac. So thats not an option.


    You're not allowed to use a keyboard?
  • SpiffersSpiffers Posts: 19New Users *
    dev666999 wrote: »
    You're not allowed to use a keyboard?
    With a straight out the box xcode, its not possible to make a new project and run it without connecting with apple, even if you type in a "borrowed" bundle id / app id. Try it for yourself, to build and run the app, you need to connect for app signing.

    bemc4wfj3rz0.png

    At least without any non-standard modification of some strings somewhere, its not possible to build and run.
  • dev666999dev666999 Posts: 3,582New Users @ @ @ @ @
    edited September 2015
    Spiffers wrote: »
    dev666999 wrote: »
    You're not allowed to use a keyboard?
    With a straight out the box xcode, its not possible to make a new project and run it without connecting with apple, even if you type in a "borrowed" bundle id / app id. Try it for yourself, to build and run the app, you need to connect for app signing.

    bemc4wfj3rz0.png

    At least without any non-standard modification of some strings somewhere, its not possible to build and run.


    Hmmm...

    I can take anyone's project, and load it on a simulator or a device, using my provisioning profiles, regardless of bundle ID/Name.

    So are you saying you do not have a provisioning profile/certificates for your project? I would assume when they gave you the Xcode, that it would already be set up with the required tools to work on your app.

    I guess what you are also telling me is that you want to create a new project. I assumed wrongly that you already had the project ready to work on. But you are really at the beginning stage of creating a new project.

    If you're that crippled with those draconian rules, there's a good chance you will not be able to do it.

    Why not jailbreak it?

    If you're that concerned about Apple somehow mucking with your project.
  • RickSDKRickSDK Posts: 1,239Registered Users @ @ @ @
    you don't need internet to write code, so that's not a problem. And I wouldn't worry about the provisioning profile at this early stage.

    the only problem I see is that it's not a very efficient way to code as you can't access forums and code examples when you get stuck. I guess you are expected to have the properties and methods of every object memorized? it's just going to be slow, but it sounds like they have plenty of money to waste on the project, so I would be happy to be working with them.
  • SpiffersSpiffers Posts: 19New Users *
    edited September 2015
    dev666999 wrote: »
    So are you saying you do not have a provisioning profile/certificates for your project? I would assume when they gave you the Xcode, that it would already be set up with the required tools to work on your app.

    I guess what you are also telling me is that you want to create a new project. I assumed wrongly that you already had the project ready to work on. But you are really at the beginning stage of creating a new project.

    If you're that crippled with those draconian rules, there's a good chance you will not be able to do it.

    Why not jailbreak it?

    If you're that concerned about Apple somehow mucking with your project.

    No, I dont have any profiles or certificates for the project. I gave them Xcode, I had to prepare a thumb drive with only binaries I could get md5 hashes from Apple and Adobe. Man oh man we had problems getting a copy of Illustrator and Photoshop that would run without internet. But we got the files, and then someone from the client got the md5 hashes and compared them with the binaries I provided. So I could not enclose any provisioning profiles or certificates.

    Regarding the jailbreak, I guess the code alone for the jailbreak would take more than a working day of entering manually from a stack of printed paper, and it would be spotted by the code review.

    The app will ofcoz not be distributed through the App Store, the client has an enterprise developers account, and they have their own distribution only to the, by them, approved devices.

    I was under the impression this forum was frequented by ppl developing and deploying apps on their own devices without a developer account, and maybe the same route they use could be used for this project somehow.
    RickSDK wrote: »
    you don't need internet to write code, so that's not a problem. And I wouldn't worry about the provisioning profile at this early stage.

    the only problem I see is that it's not a very efficient way to code as you can't access forums and code examples when you get stuck. I guess you are expected to have the properties and methods of every object memorized? it's just going to be slow, but it sounds like they have plenty of money to waste on the project, so I would be happy to be working with them.

    Forums aint a problem, as I said, if Im totally stuck, I can recreate the problem in my work office, not at the client, and then when I have found a solution to the problem, I can just print the pages of code and then enter them again at the client. Paper is allowed, not any other kind of media. They trust that building a complete back-door-hack-something would take so much to enter manually again at the client, and the unknown person doing the code review would spot the attemt anyway.

    The big problem is I cant run it on a device without having an internet connection for setting up the app id, certificates and so on, and coding without running code, is almost like doing it blindfolded...
    Post edited by Spiffers on
  • SpiffersSpiffers Posts: 19New Users *
    Guess I just have to convince them to wait till the final version of Xcode 7 gets out, I probably have to code a proxy server or something.
  • C6Silver05C6Silver05 SeattlePosts: 632New Users @ @ @
    Holy cow. I hope you didn't have to go through the pre-screening rubber glove treatment to get clearance for this role....I sure hope the pay is good.
  • SpiffersSpiffers Posts: 19New Users *
    Im still traumatised and sore, lol :s . I know the company is getting pretty good rates on this project, Im only making my normal hourly rate. Only upside for me is free lunch. :/
  • C6Silver05C6Silver05 SeattlePosts: 632New Users @ @ @
    Spiffers wrote: »
    Im still traumatised and sore, lol :s . I know the company is getting pretty good rates on this project, Im only making my normal hourly rate. Only upside for me is free lunch. :/

    Well, as the saying goes, there is no such thing as a free lunch.... ;)
Sign In or Register to comment.