I have a flash app, that we are re-purposing for iPad. I can compile it happily to AIR 2, and can debug it as an iOS app (ctrl+enter, and ctrl+shift+enter) - but when I try to actually publish it I get a Java error - not a compiler error, but an error with the compiler itself if that makes sense. The error is below - sorry for any typos, but you can't copy and paste the error message:
Error creating files.
Exception in thread "main" java.lang.Error: Method 1207 is referenced more than once.
at abobe.abc.LLVMEmitter.referenceMethod(LLVMEmitter.java:3440)
at abobe.abc.LLVMEmitter.access$2300(LLVMEmitter.java:44)
at abobe.abc.LLVMEmitter$MethodEmitter.emitBlock(LLVMEmitter.java:2854)
at abobe.abc.LLVMEmitter$MethodEmitter.emit(LLVMEmitter.java:1426)
at abobe.abc.LLVMEmitter.emitMethods(LLVMEmitter.java:3963)
at abobe.abc.LLVMEmitter.emit(LLVMEmitter.java:3835)
at abobe.abc.LLVMEmitter.processABCs(LLVMEmitter.java:206)
at abobe.abc.LLVMEmitter.generateBitcode(LLVMEmitter.java:174)
at com.adobe.air.ipa.AOTCompiler.convertAbcToLlvmBitcode(AOTCompiler.jav a:329)
at com.adobe.air.ipa.AOTCompiler.GenerateMacBinary(AOTCompiler.java:600)
at com.adobe.air.ipa.IPAOutputStream.compileRootSwf(IPAOutputStream.java :196)
at com.adobe.air.ipa.IPAOutputStream.finalizeSig(IPAOutputStream.java:35 5)
at com.adobe.air.ADTPackager.createPackage(ADTPackager.java:65)
at com.adobe.air.ipa.IPAPackager.createPackage(IPAPackager.java:165)
at com.adobe.air.ADTEntrypoint.parseArgsAndGo(ADTEntrypoint.java:132)
at com.adobe.air.ipa.PFI.parseArgsAndGo(PFI.java:152)
at com.adobe.air.ADTEntrypoint.run(ADTEntrypoint.java:68)
at com.adobe.air.ipa.PFI.main(PFI.java:112)
This happens regardless of deployment type, or rendering option. I know the certificates, and provisioning profile are correct as when I remove the Class in the .fla itself it compiles quite happily and can be put onto our dev iPad (obviously it just doesn't do anything).
Can anyone shed any light on this as I am not sure even where to start.
EDIT: This is with Flash CS5 running on XP64 if that is of any help.
try using the ADT.BAT command, it worked for us.
First, make sure your Flash Pro CS5 is up to date: http://www.adobe.com/support/flash/downloads.html
You can post a question in the Adobe Forum here: http://www.AdobeAssistance.com
Read the Adobe FAQ for iOS (make sure you are not using unsupported libraries, etc...): http://labs.adobe.com/wiki/index.php/Packager_for_iPhone:Developer_FAQ
I would read the FAQ and make sure my Flash is up to date with the latest version and try it again. If it fails I would post this question on the Adobe Forum.
It has something to do with debug information being present in the SWF. The only solution is to compile the AIR application via the command line and with the include libraries parameter:
"c:\Program Files\Adobe\Adobe Flash Builder 4\sdks\4.1.0\bin\amxmlc" .\src\YourApp.mxml -compiler.include-libraries
Related
I'm building an iOS app with FlashBuilder 4.7 and Air SDK 25.0. The app has code which installs fonts via an external SWF imported at runtime (no code in external SWF, just fonts). Imported file has been working for months but now throws below error in debugger on device :
'Uncompiled ActionsScript'
I have gone back through previous builds and some that had been working fine suddenly throw error on the swf file. Other old builds will work importing the same swf, but after running a build which fails, the working one will start throwing error!
Anyone else struck a problem like this?
I recently upgraded from SDK 22 to 25, but the problem appeared some time after that. Only significant change was running a dodgy zip ANE that crashed the debug. I've removed the ANE, but I suspect something may have been corrupted somewhere.
I've tried resetting FlashBuilder settings by deleting .metadata folder in workspace.
Tried Cleaning the projects, tried duplicating projects, tried re-publishing the swf to import.
Can't work out why some builds don't work and others do, but then stop working with no changes to the project. I feel sure there is a fix that will suddenly make all of the builds work again...
Any suggestions anyone?
I found my problem.
It appears I have previously been using only the 'Fast' packaging method to test app on ios device, which works.
When set to 'Standard' (Build) packaging to test on device it causes the swf (with embedded fonts) imported at runtime as having 'uncompiled actionscript'.
This answers my original query, but if anyone has a work-around, or alternate method of importing fonts at runtime, I'd be very happy to hear!
I have an Adobe Air application that I am packaging for iOS.
If the target is ipa-debug-interpreter or ipa-test-interpreter the app works just fine. However, any other target it crashes when trying to use assets. I have seen the following exception:
[Fault] exception, information=ReferenceError: Error #1065: Variable FlexVersion is not defined.
Fault, SpriteAsset() at SpriteAsset.as:131
131 if (appDomain.hasDefinition("mx.core::FlexVersion"))
Other times it will crash with no stack.
Why would it only work when the target includes interpreter?
Packaging with interpreter is faster than the regular debug packaging (not that I've ever noticed a timetable difference). I would hazard a guess that for it to be faster it must bypass certain processes which the normal debug would check for. From the type of error you're getting I would suggest you double check your manifest XML file for missing packages and/or the version of the AIR SDK you are targeting. Hope this provides some help.
EDIT: May also be worth revision which version of the FLEX SDK you are targeting and this can cause issues of this kind.
I was trying to make a simple app for sudoku solving on GPU with iOS Metal Framework.
I was following instructions from this blog post:
http://memkite.com/blog/2014/12/15/data-parallel-programming-with-metal-and-swift-for-iphoneipad-gpu/
I version my code here:
https://github.com/mateuszbuda/Sudoku
(As of writing this question HEAD is commit c3e06e0)
And I've encountered error when calling
newComputePipelineStateWithFunction
that is while setting up MTLDevice in ViewController (line 95):
https://github.com/mateuszbuda/Sudoku/blob/c3e06e0e1edc724eea20962f32e49f0df8143b7d/Sudoku/ViewController.swift
The error I get is:
Error Domain=AGXMetal Code=1 "Compiler encountered an internal error"
I'm running this on iPhone 6 Plus with iOS 8.1.3
Have someone any idea what can cause the error I get?
You are experiencing one of the unfinished matters in Metal. The reason the error says "internal" is because this is a compiler error, CAUSED by the compiler. Not you. Try this:
Copy all of the code in the ".metal" file that is not compilable.
Delete the .metal file (NOT just the reference).
Remove all of the content of the "DerivedData" folder located at users/yourUser/Library/Developer/Xcode/DerivedData
Create a new .metal file and paste the old code in this new metal file.
Now build and run, you should be good to go.
Anybody who finds this error make sure to send some sort of error report to Apple so that they can properly debug it and fix it in the next release of Xcode.
For anyone having the same problem, I've figured it out.
It just means that there is something wrong with a kernel function. Most probably it doesn't compile, even if you don't see any errors in Xcode.
Because I have serious problems with Application Loader reporting both codesign + Bundle ID errors, I have become quite desperate to find a solution.
I think I will need to inspect the Xcode files generated by Delphi, so I can better seek help online... Does anyone know if there is a way to see (and possibly change) the files generated by Delphi when building and deploying for release / app store?
For reference, here are the relevant SO entries:
Delphi XE4 iOS Application failed codesign verification
Delphi XE4 and iOS Application Loader complaining "This bundle is invalid"
iOS app Bundle ID errors and iTunesConnect
In lack of other answer, I am going to answer this myself. I learnt elsewhere at Embarcadero forums that the .ipa files generated are actually .zip files which you can unzip and view content of.
Good day
I have created a static library with Xcode. Then I compiled my ANE using adobe's ADT tool. Thereafter I've included the ANE in my FlashBuilder project. However, when attempting to package my project, I get the following error:
"Error occurred while packaging the application:
Undefined Symbols: "_obj_storeStrong", referenced from ...
.
"_obj_release", referenced from ...
.
"
My guess is that ARC is probably not supported for ANE's. I'm guessing that this is probably due to the fact that FlashBuilder is recompiling the entire AIR + the native libs into one iOS application, probably using their own compiler or something (which is why Air apps for iOS can be compiled on windows platforms as well), and this compiler is probably not 4.3 ready yet?
I have attempted adding the flag -fobjc-arc to my ios-platformoptions.xml as well (where this file is the parameter to the -platformoptions flag of adt), but still no joy. It results once again in an error when packaging. Perhaps any other flag I can try to use here?
Any corrections, suggestions, alternative ideas or comments will be most welcome. I am very new to Xcode, Objective C and ANE, so please excuse any incorrect statements or assumptions, and please correct me on these.
I would be glad if somebody can please confirm weather I am correct with my assumption that I cannot use ARC at this stage on ANE's.
Thanks
Christo
START EDIT:
Very late update, sorry.
You might be able to use ARC after all. There is a library called arc lite that I forgot to mention and it works. I created an ANE for MapKit on iOS targeting the 5.0.x SDK. When I tried to move to a device that only had 4.3.x ( could have been 4.3.3 or 4.3.5 ) the app crashed or would not compile. I found information on the arc lite library that is included in the newer sdks, followed the instructions on how to include this library and pow! A working ANE on a 4.3.x device without rewriting my code!
Hope all of this helps and half of my original comment :)
Markus
END EDIT
I don't think ARC is supported just yet. There isn't much to go on in terms of settings or examples of what the settings should be in Xcode. Take a look at any of the Xcode ANE projects you can get your hands on. You will see that most or all of the projects have:
Object-C Automatice Reference counting = NO
Objective-C++ Automatic Reference counting = NO
Take a look at the following:
Vibration ANE - On Adobe Devnet site
Liquid Photo - http://www.liquid-photo.com/2011/10/30/common-native-extension-issues/
Liquid Photo - http://www.liquid-photo.com/2011/10/28/native-extension-for-adobe-air-and-ios-101/
There are a lot of examples in Github but you have to find them via Google. Pull down the Xcode ANE projects and compare the settings.
Hope this helps!!!
Markus