Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
Are there math or LaTeX engines available for the Android phone? The flashcard app I like best (AnyMemo) doesn't seem to be able to integrate equations into the flashcards except as graphics, requiring a lot more work on the user's part, and I thought a third-party math typesetter would be a possibility.
(Edit 2011.04.24) More detail: From elsewhere, I've received the following remarks on some of the available options:
JScience: Only a parser. It is not useful for generating images.
jsmath: Does not display correctly in the Android browser.
JEuclid: Depends on AWT which Android does not have.
JMathTex: Depends on Swing, which Android does not have.
snuggletex: Depends on JEuclid (see above).
Perhaps the S.O. readership can think of another way?
Built on jsMath, MathJax is a wonderful browser rendering engine for LaTeX, MathML and AsciiMath, which works fine in the native Android Browser, and also in Firefox for Android. Unfortunately, though, none of these technologies (except maybe AsciiMath) is fully supported at this time. For example, only certain LaTeX commands are supported. You can also read the documentation on MathML support and AsciiMath support.
If you're comfortable with the command line, you can also try
TeX Live for Android, although it has been reported to not work with some devices.
TeXPortal, another work in progress effort to port the complete TeX Live to Android.
So, there are alternatives and everything has its ups and downs. I just hope Google converts Android to a full Unix system, it'll make things much easier for everyone.
If you just want to generate a PDF out of you LaTeX code I'd suggest the Android app VerbTeX which does exactly that. It uses the facilities available at Online LaTeX Editor to generate the PDF
See TeXPortal on Google Play for a usable app.
I am using TeXPortal. It can download missing package automatically and running
fast.
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
Are there any vector drawing applications that generate native code for both iOS and Android? I'd like a tool for making UI Controls and Buttons for both iOS and Android (in Xamarin). I can make great dynamic objects with PaintCode for iOS, but then for the Android version I'd have to recreate it with some other tool for Android so I'm basically doing everything twice. I'd love to find a way to create some dynamic controls/buttons that can be used in both Xamarin iOS & Xamarin Android.
The new version of PaintCode (version 3, as of November 2016) now exports Android compatible code.
One common approach by many organisations (including mine) to deal with cross platform design is to use icon fonts.
The way it works is
create a SVG version of your icon/design
create a custom font with the svg/vector icon as a unicode character
The advantage:
It works with great many platforms, including android, ios, windows phone as well as the web.
icons are vector, hence scalable
the disadvantages:
icons cannot have gradients
icons cannot have multiple colors (can be solved by composing icon into multiple svg components and layering them in code)
I have a small project that might solve your problems:
https://github.com/almosr/android-svg-code-render
It is a tool that converts SVG files into Android drawing instructions and saves it as Java source file. Then you can simply call a method from this source with a Canvas parameter and the SVG content will be drawn directly to the Canvas.
It is massively faster than using an SVG file as input at runtime, because it doesn't need to parse the SVG file (which is an XML internally). Also eats up significantly less memory.
There are some limitations and drawbacks, though, so it might or might not be suitable to your needs. Especially interactions cannot be mapped in the output (yet).
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I have been using the flash pro for 6 years now, and I find it very easy to create any kind of application and game (except 3D ones). The flash pro says that is can compile cross platform natively in Android (and iOs too), so am in a dilemma (or trilemma), should I use:
1. The flash pro IDE which I know very good
2. Should I learn Eclipse which I hear is ideal for Android apps or
3. Should I make the app with HTML5, jquery mobile, etc and compile it with PhoneGap?
The app I was to develop is quite simple, it has a list of POIs, categories, (from online database) and it shows them on map (flash pro may have to use stageview for that), so the graphic processing required should be minimal. It may also cache some POIs when downloaded on phone.
Please answer the question in relation to:
- Speed/responsiveness of the app
- How much "native"/professional the app will be
- Feature-wise, would all the features be there
- Debugging
Thank you,
Panos
You are always going to be able to get the best results with the most native approach (eclipse) as long as you can handle the IDE and language. You have a good deal of experience with flash and if you don't have much or any with Java you may have trouble getting into using Java.
Here's a simple breakdown though:
Flash:
Great for apps that serve as a web frontend.
Supports most common android features.
Doing anything heavy in processing or too custom tends to get bad performance.
You are abstracted from what the app is really doing and therefore have less control.
Java:
You are using the native language and therefore can use android to it's fullest extent.
You will find plenty of help for any problem you run into and it's much easier to debug more complicated apps.
Better performance in most app usages, especially for more complex apps.
Not cross-platform though you don't seem to care about that.
PhoneGap:
I have no experience for this but I would assume it's similar to the Flash approach.
Probably really good for Web Frontends.
The choice is really just dependent on what you feel would best suit your current knowledge and goals for the app.
I would strongly recommend just learning Java and using Eclipse as it will always be as good and responsive as you can design it.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I'm new to iOS/Android development so I would like to know what is the usual practice of developing an app for different platforms - is the whole code rewritten or the possibilities are used to choose some language, C or C++ for example, and keep most of the work in this language and then cover it with system specific stuff in corresponding language? I know about Android NDK and having C/C++ code in your iOS app, but the question is - is this usually used in practice - maybe later some other platforms might be added? The classical example would be the Angry Birds, of course, which I have even on my "smart" TV. Would be good to hear guys experienced in this area since I might be in the middle of making a decision. Thanks!
You should go check out the Xamarin studio. It allows you to write code in C# and reuse up to 80% of your code between the platforms. They have some videos and tutorials for how to best write code that can be reused.
You might try Qt framework as it's native to Symbian, officially ported to Android, and unofficially ported to iOS and Blackberry. It's a C++ IDE at http://qt.nokia.com
Better yet, if you're into that kinda thing, try PhoneGap here: http://phonegap.com/ This will allow you to write your "app" code in HTML.... yes, HTML, and port it to just about anything. Things that are normally OS-dependent are basically wrapped in PhoneGap's API including hardware: http://phonegap.com/about/feature/
THe classical example would be angry birds? I've either hit a time warp to 20 years in the future, or you're thinking way too small.
But yes, it is quite common to write the majority of logic in C or C++ and just write system specific stuff and/or UI in the native language.
There are several cross-platform solutions on the market. Some of them use Java and C#, they usually are integrated with the common SDKs (such as Visual Studio, Eclipse). Some of them allow to easily develop and distribute web-apps using HTML5, Css3 and jQuery combination.
You can just surf for them on the net. I suppose it's not allowed to mention them here. If I'm wrong I will post the name of some of the most known solutions that I tried.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
we made a quit big iOS application with 2000+ objective c classes. I am wondering there is a best practice guide to port it to Android ? Currently I am looking at Visual Paradigm (UML) which reverse engineers objective c files to UML. Like Enterprise Architect it also allows me to generate code(headers + declaration) for another popular language like java or c++. Are there any other approaches yet ? Also, as our app is heavily using the UINavigation and UIView controllers, I am wondering there is similar model and implementation on Android.
Thanks so far, guenter
In all honesty, I think that what you are planing is just going to make for crappy code that will be insanely hard to maintain. I realize it sounds like a lot of work, but its gonna be easier in the long run, I would just "port" the concept of the app to android and write it from the ground up.
The Apportable SDK
It cross-compiles Objective-C applications to Android, without extensive changes to the original codebase. Instead of translating the code to Java, Apportable cross-compiles your code to run directly on the Android device’s processor, bypassing the Java runtime, resulting in speed and performance that rivals the iOS version.
The platform has been tested on Apportable’s library of over 150 devices and in the wild, where Apportable-powered apps have received 5-star reviews on thousands of devices.
check out the sdk here
AFAIK there is no automatic tool to convert Objective-C to Java. There is java2objc that does the reverse.
Here are some official tips for porting Objective-C to Java: http://www.nextcomputers.org/NeXTfiles/Software/WebObjects/Guides/PortingObjectiveCtoJava.pdf
I'm not an iOS expert, but AFAIK iOS does not have layout managers - it uses XIB/NIB to do layout (or dynamically in code, which is not recommended). On Android there are layout classes which are primarily used to support different resolutions. Also, layout is declared via XML files.
So it seems there is a lot of hand-coding in front of you. Since a project is quite large, I'd get a help of an expert that knows both Android and iPhone.
For going from C or C++ to Android you are probably best of using the NDK. The problem is that I don't think this is possible (at least, not directly?) for Objective C.
I think it might be best to try and go to C, and then use the NDK to make it into an app for Android. Going from your code, trough UML to JAVA sounds like a much harder option.
just to let you know how the story did end up, I kept using Sparx Enterprise Architect and have my design, architecture and documentation well under control, for all platforms finally except for JavaScript. Its a bit tedious when integrating new features but in an enterprise environment it saved me a lot of time. We are working on iOS, Desktop(Web2.0/HTML5), Android, Blackberry, Symbian and some router systems. To get rid of platform specific things, I introduced always an additional layer. Seems to work for our products so far.
Thanks to all again, g.
MyAppConverter service helps to convert native iOS mobile apps instantly to native Android app, it's not focused mainly on the look and feel, and UI interaction of your app. That means it don't replicate your application as it is. Instead, MyAppConverter make all changes to make a project suitable for the development of an Android application.
MyAppConverter currently support only iOS to Android conversion and objective-c to swift.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I've looked around for a physics engine that will play nicely with Android, but I've only been disappointed.
In terms of performance, I had heard that jbox2d was the best bet, but (from my understanding) ever since Android SDK V1.0, the Dalvik VM's verifier has become very strict and rejects some of the key classes and refuses to run. This problem persists after using the dx tool (although I might be using the tool improperly).
I know that the AndroidBox2D porting project exists to optimize jbox2d for the Android garbage collector, but the project page doesn't have any downloads and the gpl license isn't as attractive as the zlib license of the original.
Does anyone have any tips for making jbox2d work in Eclipse, or have any recommendations for where I should start looking?
I don't know why Dalvik would reject classes unless they were obfuscated with some tool. Did you try recompiling Box2d from source?
The only other Java lib I've seen is http://www.cokeandcode.com/phys2d/
I am getting good results with the Java version of APE using Fixed Point math rather than floats.
http://www.cove.org/ape/
I have done an implementation of the APE engine now using (mostly) fixed point math and it is without garbage collection. Its a pretty nice engine to do stuff with constraints but seems less suited for really rigid bodies.
http://code.google.com/p/ape-physics-for-android/
You could also look into the NDK port of Chipmunk (download link on youtube page)
http://www.youtube.com/watch?v=_i_GFjfmLTc
Also look # Glaze which is optimized for arrays .. might not be a horrible port to Java from AS3 (it was ported to Haxe also)
http://code.google.com/p/glaze/
I am not sure, if jBox2D is really suitable for smartphones. I would rather look at J2ME engines, as they are highly optimized for performance- E.g: http://emini.at
Also you should have no problems with integration.
Libgdx has JBox2D built in and is cross platform (Android, Java Desktop, GWT Web) like Unity, tho it's free and open source.
I got it set up in 15 minutes and was creating physics bodies in no time. The Libgdx physics manual helps from there. Good luck!