When I press Build and Go - my program is being recompiled then send to iOS device - so if I need to install it to 2 or 3 devices - the checksum will vary. I need to have one binary for all the same devices - how could I do that - compile once and install on several devices this binary.
You need to add all your devices to your provisioning profile. Then you can create .ipa file containing your prebuilt app with Xcode and just distribute it to be installed using iTunes.
Do use TestFlight (https://testflightapp.com) or HockeyApp (http://www.hockeyapp.net). This allows you to distribute your app OTA (Over the Air), catch crash logs, symbolicate them, force users to update to specific version, ...
To do this, you have to put all devices into provisioning profile. When you do this, you're not forced to build and install it separately for each device, because the app is already signed for devices in your provisioning profile. Thus you can also simply grab the IPA drop it to iTunes and sync for example.
Related
my apk is 1.4MB but error is "This APK results in unused code and resources being sent to users. Your app could be smaller if you used the Android App Bundle. By not optimizing your app for device configurations, your app is larger to download and install on users' devices than it needs to be. Larger apps see lower install success rates and take up storage on users' devices."
how to fix this error
It's only a warning, not an error.
For an app that small I wouldn't worry.
It's not something that's made its way into the Ionic ecosystem yet but I heard that if you open up your project in Android Studio and then do the build through there you can create an app bundle.
I'm not totally sure that its fully tested for Ionic so you might have issues with this, but Android have published a full guide:
https://developer.android.com/guide/app-bundle#get_started
This is what they say:
Download Android Studio 3.2 or higher—it's the easiest way
to add dynamic feature modules and build app bundles.
Add support for Dynamic Delivery
by including a base module, organizing code and resources for configuration
APKs, and, optionally, adding dynamic feature modules.
Build an Android App Bundle using Android Studio.
If you're not using the IDE, you can instead build an app bundle from the
command line.
Test your Android App Bundle by using it to generate APKs that
you deploy to a device.
Enroll into app signing by Google Play.
Otherwise, you can't upload your app bundle to the Play Console.
Publish your app bundle to Google Play.
I have a jailbroken iPhone 5s, and want to extract the .ipa file of one application that I have installed on that device. Is this possible, and if so, how?
Is it possible to extract the .ipa file from the iPhone without jailbreaking it? My intention is to perform static analysis of the application.
Since you have a jailbroken iOS device, try installing ipainstaller from Cydia and then use ipainstaller to extract the app to an .ipa file.
I use ipainstaller -l to list all the apps installed on my jailbroken device and grab the bundle id of that app you wish to extract. Extract it using ipainstaller -b <app_bundle>.
It appears that IPA Installer from Cydia has not been updated since July 2016. That last version, 3.4.1-1, only supports up to iOS 9.
However, with iMazing, you can get something close. If you have previously "purchased"/downloaded an app from the Appstore, then are using the same Apple ID logged in to the Appstore, you can download it again. It appears that iMazing may be using the same Appstore API, so once you are logged in to the same Apple ID, you can download the ipa again. Except, this time, it would be downloaded to your Mac as an ipa, rather than iOS device. So it is technically not retrieving the ipa from the iOS device (it no longer exists in the device as an ipa anyway), but getting it from the Appstore. Then you can proceed with your static analysis.
To publish an IPA
I go to publish -> Distribute ad hoc/enterprise -> and then I publish the app
However, I can only publish an IPA with a distribution profile, this means I don't get any debugging on my phone.
How can I publish distributed profiles on test flight?
Solved it.
For ANYONE having this problem (i.e. being able to use a development certificate instead of production), follow the following steps.
---- Downgrade your ITunes VERSION to 11.1.5, otherwise it will complain when you try to do an iTunes sync that iTunes doesn't have enough memory!! (Titanium need to fix this!)
1) Download 11.1.5 from here http://mac.filehorse.com/download-itunes/4050/
2) Go to Applications, and Delete itunes... If you get an error message saying something like "This app is require by OSX" just go to Get Info > Sharing & Permissions > Everyone ... it has to say Read & Write.
3) Install the itunes you just downloaded
4) Open it (You might need to hold you "alt" key while opening so you can create a new library (11.2 changed something in your library that is not compatible with 11.1.5)
Then publish app USING ITUNES SYNC. (this is the ONLY way to get the development .IPA)
The app will now be in your app folder within iTunes.
You will now be able to upload your app onto test flight - a development version using a development APNS certificate. Also because it is in development mode, means that you will be able to see all error problems either through Xcode or Iphone configuration. If you publish an ad-hoc system based on production, it will not print out any Ti.App.Info etc commands in the device console.
Hope this helps! :)
After using the "iPhone Configuration Utility" program to install IPA applications to my iPhone on the go, I wondered how this process worked. Within a few Google searches, I found out about "MobileDevice.framework" and the "MobileDevice Library" connected to it. After reading an article of all the Known Functions in the library, I found one called "AMDeviceInstallApplication". I thought this would work once I saw install, but I'm currently perplexed on how to use it.
TL;DR I have IPA files and I want to make an Xcode program (for Mac) that installs the IPA's application to a connected iOS device when a button is pressed.
Also, don't worry about the application not being signed correctly. It is signed with a provisioning profile installed on devices [the application] will be used with.
If you're still interested in this problem I've written a blog entry on how to install apps on a connected iPad / iPhone without using Xcode or iTunes.
This method allows you to run a Terminal command to install an iPA file.
http://pervasivecode.blogspot.co.uk/2012/06/install-ios-app-ipa-file-without-xcode.html
I suppose you could bundle up the terminal commands in your application and use it that way?
I found a simple way to install iPa file to real iPhone or iPad:
Connect iPhone to Mac via USB and follow the below steps:
Steps to follow:
Open Xcode
Click on Window
Select Devices and Simulators
Drag and drop the IPA files into it
App got installed on the iPad
From TestFlight I get this on the build and distribution: "These teammate's devices were not identified in the embedded.mobileprovision for this build."
What do I do?
You will have to re-create the mobile profile with these devices added to it. Then, you'll need to re-build your iOS application and be sure that it is created with this new provisioning profile. Only then will these other users have access to the application (and then their devices will show up in TestFlight for that build's allowed devices).