I have tried this question on the site of Titanium and several tweets to their account, but they either ignore me or refuse to answer.
I want to start using their framework, but for some reason the iPhone SDK is always "loading" when in the "TEST & PACKAGE" tab.
Have you guys found a fix for this? I have:
Snow Leopard 10.6.3
Titanium Developer 1.2.1
iPhone SDK 3.2
All the certificates "blah blah" from Apple because I am able to test and deploy apps on my device using XCode.
Help please :)
Do you have a name with non-ASCII characters?
There is a bug regarding developer certificates with non-ASCII characters in them.
I've filed a bug report, to Appcelerator's Lighthouse site:
My name has a character with umlaut (ö) which prevents prereq.py from doing what it should. Titanium only says "Loading..." in the SDK version select box.
The patch attached to the page, which changes json parser into simplejson, helps the python script to pass. I run it in console and get the expected output:
'{"wwdr": true,"ipad": false,"sdks": ["3.1","3.1.2","3.1.3"],"iphone_dev_name": ["Björn Söderqvist (XXXXXXXXXX)"],"iphone_dist_message": "Missing iPhone Distribution Certificate","wwdr_message": null,"itunes_message": null,"itunes": true,"iphone_dev_message": null,"iphone_dev": true,"iphone_dist": false,"itunes_version": "9.0.3"}'
Titanium app still reads the output wrong though.
It works if I copy-paste the console output of patched prereq.py like so:
(line 877 of packaging.js)
var d = '{"wwdr": true,"ipad": false,"sdks": ["3.1","3.1.2","3.1.3"],"iphone_dev_name": ["Björn Söderqvist (XXXXXXXXXX)"],"iphone_dist_message": "Missing iPhone Distribution Certificate","wwdr_message": null,"itunes_message": null,"itunes": true,"iphone_dev_message": null,"iphone_dev": true,"iphone_dist": false,"itunes_version": "9.0.3"}'
https://appcelerator.lighthouseapp.com/projects/32238/tickets/646-iphone-sdk-problem-with-non-ascii-characters-in-development-certificate
Unfortunately, the link I refer to in the post does not work anymore. The suggested patch was to do the following to prereq.py:
Line 8
#import json, run, tempfile, codecs
import poorjson, run, tempfile, codecs
Line 139 (replace last line of check_for_package() with this)
print poorjson.PoorJSON().dump(props)
Let me know if you need more specific information.
Related
UDIDs are not showing in the latest version of iTunes 12.9 with iPhone Xs and Xs Max running iOS 12.
Does anyone know how to obtain the UDID from the new iTunes?
So far I managed to get a 24-digit code from Xcode. I am using iPhone Xs Max, the device is showing up as an iPhone 4 in Xcode!
It seems like Apple has changed the UDID format from 40 digits to 24 digits, and a hyphen has to be added after the first 8 digits for the registration to work. e.g. 00008020-
Note: the code that shows in Xcode does not include the “-“, it needs to be added manually. It will not work if you paste the 24-digit code onto the device registration page.
Just wondering if anyone managed to get the UDID on iTunes without using Xcode? Or third party softwares?
This is the method I used so far:
Connect iPhone to Xcode.
Windows - Devices and simulators.
Copy the 24-digit indentifier code.
Add a hyphen after the first 8 digits.
Register on the apple dev account device list.
Let us know if there is an easier way.
Hope this helps, and can save people some time.
For a non-Xcode answer, see https://stackoverflow.com/a/52473809/3303337. Quoting that answer:
Go to "->About This Mac".
Click on "System Report" and select "USB".
Find your phone and the "Serial Number" field is what you are after.
Copy this value and paste it into the developer portal when you register a new device.
Then just inject a dash after the first 8 digits.
In fact, the format has changed, it's like that now :
00007020-0018598X0X90003X
It's called "Identifier" in :
Xcode > Window > Devices & Simulators
Source : https://iphonesoft.fr/2018/10/08/apple-change-format-udid-l-iphone-xs
You can easily get UDID as well as other device information by using the app called "Apple Configurator 2".
Here is the app link.
https://itunes.apple.com/us/app/apple-configurator-2/id1037126344?mt=12.
Here is the screenshot.
Like dpalmer's answer, you can use the System Report. To get the System Report's serial number on the Terminal without as much clicking, you can paste in this command:
system_profiler SPUSBDataType -detailLevel mini | \
grep -e iPhone -e Serial | \
sed -En 'N;s/iPhone/&/p'
Output:
2018-10-25 12:57:06.527 system_profiler[23461:6234239] SPUSBDevice: IOCreatePlugInInterfaceForService failed 0xe0003a3e
iPhone:
Serial Number: 3aeac....4145
You may ignore the failed 0xe0003a3e part and get the Serial Number: 3aeac....4145
From my blog post on the topic, that includes methods to get the UDID on Windows as well: https://deciphertools.com/blog/2014_11_19_how_to_find_your_iphone_udid/
As everyone notes, you need to manually stick in the hyphen after the first eight digits.
I've finished working on a Cocoa (not iOS) application with Swift 3. I've tested it on a desktop computer. It works fine. I've tested it on another desktop computer. It works fine. I have even managed to send it over to iTunes Connect. But I have not submitted it because the same application fails to run on a MacBook Pro (2013). Anyway, I've tested it on a MacBook Pro with a retina display. That's when the entire problem started happening. Actually, this desktop application ran on the same MacBook Pro a few days ago. I think it was not sandboxed yet. Now, every time I send a binary copy that runs on different iMac models to MacBook Pro through AirDrop and try to run the application, I get an error that says EXC_CRASH (Code Signature Invalid). So I've deleted some files inside Developer /Xcode / DerviedData. Now, I cannot even debug the application. When I debug it, it hangs up with a fatal error message, which I have never seen before.
Now, if I double-click on an application that Xcode has generated, I get a crash report that says Library not loaded: #rpath/libswiftAppKit.dylib. I thought that I might have deleted some system files by accident. But if I debug existing macOS and iOS apps, I have no problem running them. Fortunately, the entire problem occurs on this particular Xcode project.
One topic that I've found here suggest that we set the Always Embed Swift Standard Libraries option to Yes. I've done that with no vail. I have also read a suggestion that says something about setting the When using this certification option on a developer certificate to Use System Defaults, which doesn't help. Another suggestion that I've tried is clearning cache (Command + Shift + Option + K).
If you have any suggestions, please let me know. Thanks.
More information
I have also seen a bizarre alert message repeatedly on MacBook Pro that says "%#" cannot be found. This error message poped up when I double-clicked on the application icon. It may refer to
String(format: NSLocalizedString("whatever", comment: ""), variable name)
I have solved the problem! I had the same problem with you. But from the answer in https://www.reddit.com/r/swift/comments/4nac9s/using_swift_frameworks_with_command_line/, I have known that the key is the rpath.
So I try to add this path to the project in the following two settings:
${DT_TOOLCHAIN_DIR}/usr/lib/swift/macosx/
Runpath Search Paths
Library Search Paths
I don't know why need to add both the two settings, but it works!
I'm really newbie in iOS and I have to handle a complicated situation. I was given an iPhone app developed by someone and I have to make it work. The guy who developed it has told me that it worked, but sometimes crashed in an iPhone. I've never developed using iOS and I don't really know how this app works.
Well, when I open the app with Xcode, the first problem that I detect is some errors with the references. The app uses the project CorePlot-CocoaTouch.xcodeproj. I've added again this project and solved the references (I've followed some other posts like this one: http://www.jaysonjc.com/programming/pie-chart-drawing-in-iphone-using-core-plot-library.html).
I want to test it with the simulator (I don't have an iPhone yet). I have a doubt here...should I use iOS Device, or iOS Simulator as Base SDK? Firstly I chose iOS Simulator, but it appeared a problem with Cocoa.framework (it turned into red).
Anyway, using iOS Device as Base SDK, I build the project and it says "Build failed (59 errors, 3 warnings)". I check out the errors, and most of them are "Expected specifier-qualifier-list before ..."
Can anyone help me? This is more or less the situation, but I can provide more specific details if they're needed.
I'm sorry if I'm talking about something really basic, but I've been trying to solve it for 2 weeks and I give up. I've tried to talk to the guy, but he's not really helpful..
Thanks for the replies!
By the way, I didn't say it and I don't know if it's relevant or what it means. The guy has a directory called "Libraries" where it's stored the CorePlot. The files there are the same than if you download the CorePlot project from other source. The only exception is a folder called "SDKBuild", which contains files like "build.sh", "iphoneos-SDKSettings.plist" or "iphonesimulator-SDKSettings.plist". I'm really newbie, so it's probably obvious, but I have no idea...
just try to add CocoaTouch framework to your project.
and for base SDK use "latest iOS".
Right click on the project name in 'group & files' set on the left of xcode. Choose add -> Existing Frameworks.
Find Cocoa.framwork and click add. Do this to all red colored framework.
Choose IOS Simulator as base SDK.
Try run it..
If you want to run the app on simulator, you have to build with iOS simulator. The base SDK basically sets the OS version (this will be the same regardless of whether you are running the app on simulator or device). You should be chaining the build settings to device only if the device is connected and if you have installed the appropriate provisioning profiles.
In order to distribute my iPhone for test purposes on a couple of device Over the Air, I have created an AdHic distribution profile and followed the explanation I found in this blog (sorry it's in French but the screenshot are quite detailled):
http://www.media-business.biz/content/iphone-cr%C3%A9ez-votre-propre-appstore
I install the position profile on the device from my web site but when it comes to the application I have an error message saying it's impossible to download the app.
Is this a known problem ?
Thanks a lot for your help.
Regards,
Luc
ps: just adding a last minute question... is there a place I could see some error logs ?? :(
Here's another explanation in English. This distribution method only works with devices running iOS 4.x
Make sure that:
The IPA file name matches exactly the name of the server (case sensitive).
The bundle version number is identical in the IPA file and your plist file, and that you update it every time you make a new IPA (or the phone will think it's already installed and not update)
You are using an itms-services:// link to point to the plist file, and the plist file has the correct URL to your IPA file.
When you go into Organizer and press the "Share" button, you select exactly the distribution profile you intend to use (sometimes I think it can select the wrong one with automatic).
I had this exact same issue, and it was because I hadn't installed an AdHoc mobileprovision file and was building against my Dev mobileprovision. Check that first.
I finally found testflightapp.com, that is really great !
I also think testflightapp.com is the most convinient way to do this, as long as the beta testers you'll contact accept to sign up there. The great additional value is that if you install their SDK in your app, you'll be able to monitor the activity of your beta-testers (for instance you can define waypoints with definite names).
However, if:
You already konw the UDIDs of your beta testers
You just want them to be able to click on a link from your server to start installing the app,
You don't need "in app" follow-up and just request feedback from your testers,
Then I strongly recommend this tutorial:
I am trying to perform some unit testing on the iphone but for some reason I cannot get it to build the executable
I have downloaded TestMyApp from the Standford lecture slides and that compiles and runs perfectly. I have created a test project and even gone as far as to use the test code from the Stanford sample but for some reason depsite every setting looking identical I get the following precompiler errors:
/System/Library/Frameworks/Cocoa.framework/Headers/Cocoa.h:13:26:
error: AppKit/AppKit.h: No such file
or directory
/System/Library/Frameworks/Cocoa.framework/Headers/Cocoa.h:14:30:
error: CoreData/CoreData.h: No such
file or directory
N.B> Only other point to note is that Im running it on a "tweaked" xcode install on a PPC not an Intel mac
If you right click on your unit test target and select the "get info" menu you will see your target options.
At the bottom of the pane, you'll see a section called "User Defined": remove the entry containing the path to cocoa.h.
I don't remember the name of this entry as I removed it, but this fixes the same problem I had before.
I also changed Base SDK to be Device - iPhone OS 2.2
and other linker flags to -framework Foundation -framework SentestingKit
AppKit is not available for iPhone development. Looks like you downloaded a desktop mac app project. iPhone dev uses UIKit in place of AppKit.
CoreData is not available for iPhone dev as well.
Try setting up a Desktop cocoa application, and these frameworks and objects should be available.
For unit testing an iPhone app, the Google Toolbox for mac is useful.
GTM iPhone docs
You can find instructions and a sample project on Sen:te web site: http://www.sente.ch/s/?p=535&lang=en
I had to remove the value for GCC_PREFIX_HEADER in the "User Defined Section". It was using
$(SYSTEM_LIBRARY_DIR)/Frameworks/Cocoa.framework/Headers/Cocoa.h
Once I removed that, I got past this problem.
Do you have the iPhone SDK 2.2 installed? Without using the GTM for iPhone, OCunit doesn't work with iPhone SDK < 2.2.
I have been working with the Stanford example code as well. When I try to set up my own project, I wasn't able to get my tests to run. So, I took the Stanford example projects and renamed everything. Now the OCunit testing is working fine.
Do not use the Sen:te thing for testing any classes that make use of the UIKit framework. It will fail with code 139. Use Google's GTM.