Android :: Upgrading And Existing Flex Application Using The Mx Library To Work?
Aug 12, 2011
I am trying to make my flex app work on Android, and that involves making an AIR app to run on Android. Seeing as the flex app needs the mic, an AIR app is required. I am using flash builder 4.5 on win7 with air 2.6. The trouble seems to be that most of it is now not available. For example mx.containers is there, but not mx.containers.viewStack. I notice that there are obvious equivalents in spark for some components but not others. VBox, HBox, Canvas VDividedBox, AdvancedDataGrid and associated custom renderers are the components my application uses the most. What is the fastest way to make this work on Android, I am under time pressure. Is there a site somewhere that recommends the best way to do this, and what components can be replaced with which?
Using AIR for Android, is it possible to call from Flex into an NDK library? If so, how can this be done? I have a large C library that I need to use. I know that I can do this from an Android Java app (through JNI), but I have a large Flex codebase that I'd like to reuse.
I want to load a flex application in mobile flex application and also i want it to interact with the parent application. Right now I am trying to load the swf with swfLoader in mobile app, but it gives me security error. And also should I want the parent application to be generic in terms of child application as in down the line if someone wants he can have another child application with same name run.
I have an Android AIR application (developed with Flex SDK 4.5.1) for which I need to block the Home Button, as the app is used by patients in a hospital without supervision, i.e. it is crucial that they cannot leave the app.
It seems that the only way to hijack the Home Button is to be registered as the default launcher, so that your own app gets the focus when home is pressed. This is easily achieved in the manifest, such as:
I'm building an Air for Android App and I'm having problems loading a flex module. Does anyone know if loading modules is possible???
I built a simple app with just a ModuleLoader in it, which loads a mx:module. The module has only a simple mx:Label with a "Hello World" text.I build a .air with this. Then I build a .apk with the followin adt command.
I gone thorough the adobe flash builder video tutorials and did the same thing to create an application for android device, but when i run the application it is showing Sorry dialog box saying that, The application Test1-debug(process air.Test1.debug) has stopped unexpectedly. Please try again. I tried many times but it is not working. Initially i thought no Adobe-AIR in my device, but it is there. I am using Reliance 3G Tab. I don't why it is not working, if anybody know this please reply me.
One more thing, i downloaded one APK (which is designed with adobe flash or flex) file from [URL]..and installed on my android device. When i run that application only blank screen is appearing, but in video they shown, it is working. Why it is happening like this?? Is any problem with my tablet ?? or application ?? or adobe AIR not installed properly on device ?? Like this i am getting too many doubts.
I have a flex app using the 4.5.1 sdk and AIR 2.7 running on an Android 3.2 tablet. During use, I can get it to crash fairly regularly. It's usually when I'm rapidly scrolling around in a List control. I can't seem to find the cause.
The application will just suddenly close. It happens in both debug and release builds.
When in debug mode, it just disconnects from the debugger and doesn't give me any useful information.
I'm at a loss on how to debug this. What are some techniques I can use?
I found the "adb logcat" command. Relevant info from the log below, unfortunately it doesn't mean much to me.
What is the best way to display a large amount of text (5000-10000 words) in a Flex mobile app?
I have been loading text in through an xml file using itemrenderer. It works totally fine when I run the application on my PC but when I load it onto my Android phone it crashes. Looks like my phone can only handle loading in about 3000 words using this method without crashing.
Anyone have a suggestion? Also, HTML isn't going to work for me. I want the text built into the application, which is why I have been trying to use the xml file.
I need to delete all the application data directories on the exit of an application: /data/data/air.<appID>/cache/.AIR /data/data/air.<appID>/cache/webviewCache /data/data/air.<appID>/databases
But I get each time the "directory not found error"
This is from my application descriptor: <id>test01</id> <filename>test01</filename> <name>test01</name>
I know also this is not a best practice, but for security reasons I need to delete all the stagewebview cache and autofill form data.
I know it is possible to develop a full flex application using AIR for android but what I need is to embed a flex component into an already existing classic java android application.
I found some flash players in java but they all either require a JFrame or include of specific windows dlls.
when tried to build a AIR application for android using flex builder I did the following steps to do that .plz tell me where the error happened
1.Created Air application using flex builder that produced two type of files .swf and .xml files and cetification file
2.Created apk file from the above files using "Package assisstant pro"
3.then i installed AIR 2.5 run time in my emulator
4.after that i tried to install the apk file that Created from the 'package assisstant pro' then i tried to install the apk file by using command prompt then it show this error "INSTATTION FAILED INVALLID APK" .And also i cann't install other apk file (Sample air for android application apk file that downloaded from the site) that shows the same error,I succeed to install other application's(Say for printing hello world) apk file.[code]
I have an enterprise Flex web application, served up over https, that runs fine on Flash player 10.0 and beyond on a desktop computer/browser.
However, when I run it from my HTC Incredible with Android 2.2 the app loads fine, but there is no on-screen keyboard and so I cannot log in. I can see the blinking cursor inside the username and password text fields. I can switch between them. I can even hit the login button and see an authentication error!
I read that using Flash Builder 4.5.1 you can create one application and run it on a mobile device, in Internet browser and in Desktop AIR. However, I created a mobile application and the only option to run it is 'Run as mobile application'. Is it really possible to run the same Flex application in browser and on mobile?
I am working on a try-out app targeting ios and adroid mobile devices and I use flex 4.6. I want to hide the app in the list of running applications. Is it possible?
If not, is there a way to change the name and icon of the app in run-time after installation?
I am developing application with Adobe Flex on AIR platform. Using native extension for Android, it is possible to send SMS from my Flex application. Would it also be possible to receive SMS with my application (receive Broadcast carrying information about incoming SMS)? More generally, is it possible to receive Android Broadcasts in my Flex application?
Is there any way to embed YouTube video/video player into Android Flex AIR Mobile application?
I tried to use SWFLoader(...) but since its MX library class only works on the desktop runtime environment, but fails to work on actual Android device when debugging the application.
Maybe it's possible to embed HTML that contain YouTube video into some Flex media container like TextArea or something?
I am creating a android app using adobe air (flex sdk 4.6.0) and i am trying to find out what the width of the phone screen is in pixels. So I am fallowing the tutorial here but when ever i copy the code into my project and click run it always gives me this error "TypeError: Error #1009: Cannot access a property or method of a null object reference." and goes to the line that has stage.stageWidth I have also tried stage.width but it does the same thing. So does stage.stageWidth no longer work or how do you tell the screen size of the tablet or phone? Was it replaced with something else for phones? I am trying to get the information so i can center images in the center of the screen using action script.[code]
I am creating an application. At one view I have three states. If I changes state and than back button pressed it unloads the application.I am developing it in Adobe AIR.
Here's are the errors: VerifyError: Error #1053: Illegal override of allowInsecureDomain in _SwdModule_mx_core_FlexModuleFactory. ReferenceError: Error #1065: Variable _SwdModule_mx_core_FlexModuleFactory is not defined.
SwdModule is a module used within the organization and there's an application that loads this (and various other modules) at run time. I've read on other stack overflow and various web site that this error was caused because the modules and the main app. were compiled using different Flex SDKs. I verified and checked up on this, but all of my SWFs are compiling using 3.5.
Can anyone think of anything else why this error would be occuring?
After upgrading the Flex SDK from 3.1 to any newer version of the SDK and trying to compile an existing project, the following error appears in the Problems pane:
Description: { expected Resource: (shows project name, not a specific file) Location: line 15
Any ideas how to solve this or where to start the bug hunt?
It looks like the problem is in the ...sdks/3.3.0/frameworks/libs/player/10/playerglobal.swc file, but I'm certainly not sure.
what is the best workaround for this particular error? I was able to easily resolve a similar error with the "backgroundColor" attribute by changing it to "contentBackgroundColor", and was hoping there was a simple workaround for backgroundDisabledColor as well. I realize I can apply a css style, but I'd rather have a simpler solution as there are many many other attribute errors similar to this one.
I'm new to Flex and want to learn about how to implement client-side caching for data that is repeatedly requested from the server.
Let's focus on a simple example to discuss caching. Take a Flex application having several screens, where each screen plots a line series (of x and y data). The user can switch between the screens, and each time a screen is visited or re-visited, numerical arrays for both x and y data are requested from the server. The values of the x and y data on the server, of course, never change.
I want to learn what techniques are available that could be used to implement caching in the browser or AIR application such that once the x and y data is downloaded the first time, the application pulls these arrays from cache when re-visiting this screen in the future.
I am using swfAddress 2.4 for browser navigation and everything (back and forth button in the browser) works fine as long as I stay in my flash website, but when I use back button eventually to go out of the website and then use the forth button to come back , it just takes me to the home page of my website, instead of the last page I was in my website before I hit the back button. it looks like I loose the history of my pages as soon as I go out of my flash application.
how can I make the browser navigation with swfAddress works when I go out of my flash application and want to comeback to that? and still have the history of my pages.
I have Main.fla and SkinA.fla. Both have MovieClip library item: MC_BrandLogo.I'm loading the SkinA.swf into Main.swf in the current application domain trying to replace the class inside Main.swf. If there is no library item in the Main.fla, I can instantiate MC_BrandLogo with the correct graphic. If the MC_BrandLogo already exist in the Main.fla then that graphic is used even though I loaded new one in the current application domain.Is there a way to replace existing linked movie clips with loaded dynamically?
var loader:Loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onSkinLoaded); var context:LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain);
I have an existing MovieClip called mc1 on the Stage. That MovieClip has 2 keyframes, the first one has an image in it, and the second one is an empty keyframe.
After compiling, I want to load an image (image1) from the library into the the firstkeyframe, and replace the existing image.
I know I need to right click on the image in the library, export it, give it a class name, and I need to assign an url to it which would be 'image1' in this case.I was thinking of this, but I cannot get the url right, and I dont know how to refer to the firstkeyframe after I've loaded it..
var Imagecontainer:Loader = new Loader(); var image:URLRequest = new URLRequest('image1'); Imagecontainer.load(image); mc1.addChild(Imagecontainer);
I have a Flash application with one scene, three frames and a bunch of ActionScript code to provide a number of ExternalInterface hooks. The three frames contain a single Input Text box which, as the <embed> tag is resized using JavaScript, grows and shrinks (not scales) to fit. I now want to add the ability to zoom in/out of this application, for enlarging small text on screen without increasing the text point size. I thought this would be easy using the Javascript Zoom(percent) method of the Flash object, but this doesn't work because my ActionScript code contains:
[Code]...
I suspect I need to take the entire movie as I have it now, and put it inside a movie clip, add a zoom ExternalInterface call which somehow scales the movieClip, and move the External Inteterface methods I have now from the new Movie Clip outside to the stage... but this sounds like a near complete rewrite? Will this method even work? Is there a better way?
Lets say we have an online application written in AS3 and served from a server as a SWF. The first version to go out is V1.0.
Several users, some behind a proxy server, use the V1.0 application and now there is a cached copy on the client machines and the proxy server.
V1.1 is released and placed on the server. All users should see V1.1, but results will vary, some will be served the fresh copy, some will for a period receive their cache's copy, and finally some will be served the cache'd copy in the proxy server.
I can be code in the V1.0 that checks a server variable to see if it's out of date. BUT if it is out of date, is there a way in AS3 to force it download a fresh copy, or apply the differences into itself?
Considering that I don't have access to the proxy server and can't manually or automatically clear the cache.