I'm not an android developer and don't really know anything about it so forgive me if this is a silly question. Basically, I've come across an android package that is supposed to support the correct display of Arabic letters on android devices. Here's the link: https://github.com/agawish/Better-Arabic-Reshaper
Now, all I see are two java files that I can download. But how am I supposed to install this package? Do I need root access to my android device? Is there a directory that I need to put them in? There's no tutorial or guide in the readme file.
But how am I supposed to install this package?
Step #1: Learn Android development.
Step #2: Create an Android application.
Step #3: Contact the author of that code to get a license for it, as it is not open source.
Step #4: Add the code to your application and use it to fix the Arabic behavior in your app. Note that this may not be needed on newer devices, and may actually have issues on newer devices, given changes in bi-di text handling.
Do I need root access to my android device?
I doubt it.
Is there a directory that I need to put them in?
Somewhere in the src/ of your Android application project on your development machine.
This code is not an Android app, nor is it designed to do anything for an entire device.
Related
I'm supposed to port an iOS app to Android. I have the iOS project in front of me but i do not have XCode to open it.
So I have some questions:
Is there a way to open the project on Windows? I DON'T need to build it or anything, I just want to see the correct file structure (because the file structure isn't the same in the project and on the hard disk).
How do you recommend to handle updates? The iOS app will always be updated first and my job is to update the Android app afterwards, according to the new iOS code. Is there a good software where I can see all the changes made to the iOS project? Or is this a stupid idea?
If you happen to know any good resources for android developers to understand the basics of iOS apps (not Objective C, more the structural aspects), let me know.
Thanks
In what format do you have it? You can use textedit or nano or vim or anything to open the individial .h and .m files.
Yes, have you heard of github? You can check the revisions. Additionally, if you know the high level feature overview of what you will be developing sometimes you may not need to see the other platforms code at all...
https://developer.apple.com/technologies/ios/cocoa-touch.html + google
Okay, here's where I'm at. I used Eclipse to import the code for the SMS/MMS app that is on Android devices. The code on GitHub is at https://github.com/android/platform_packages_apps_mms.git. I used the Import -> Git in Eclipse. Got the code into the environment. Had to manually paste the AndroidManifest.xml file into the project, and also copy over source and resource directories.
Basically, I want to get the Eclipse project to a point where I can run it on my device and it behaves JUST like the built-in app. THEN, I can modify it for my specific needs hopefully. I don't want to have to write all the SMS/MMS functionality from scratch if I can avoid it.
NOW, the problem is: A LOT of unresolveds. I keep reading various places where people are saying that some of the packages aren't REALLY in the SDK and are internal... Why the heck call it an "open source platform" when the source isn't available for the built-in apps that Google provides?! (If this is in fact the case). Further, why would they provide the code on GitHub for the MMS app if in fact not all the code is available and you can't compile it? Seems a little ridiculous to me.
I have read some answers to previous posts where I was just sticking my "toes into the water" so to speak, and people are saying that a lot of these packages are part of the firmware? Seems like there should be some base code for a texting/mms app out there somewhere.
Anyone know of any? (Open source, free, SMS/MMS Android code that I can easily obtain and that don't suck, if in fact I can't use Google's code?)
Thanks,
John
Mms as well as other system apps use private or hidden APIs that are not available through the SDK.
This has nothing to do with not being an open source platform, as you mentioned, but with the fact that you are trying to build the application in a way that is not supported and nobody says it was.
If you want to modify and build Mms, do it as part of the firmware build, using make, not importing the project to be built by the SDK in Eclipse.
The stock MMS app built into a device's original firmware, signed with a private key, and is able to use some private API.
Third party apps can't use the private API for various reasons, one being security. All the source is open if you wish to view it.
You can definitely build your own firmware, or ROM, as some call it, and run your own modified MMS app on it.
I don't know if you can make and install your own MMS app. You can find out by looking through the Play Store for similar apps or looking at the Android developer documentation to see what permissions and API are provided to third party apps.
Okay, here's the situation:
I'm developing an application for a client (or trying to do so). It requires much (if not all) of the same functionality as the built-in SMS/MMS application. So, I thought - HEY! Android is open source right? I can take the application and modify to my needs, right?
So, I found the code on github for the MMS/SMS application (for some reason, based on the AndroidManifest file, it calls my project I built, "ConversationList"). But I get TONS of errors involving the import com.google.android.mms.* package and a couple other packages.
Everyone keeps saying "it's a private/internal package", and "download the entire AOSP". But, HOW do I do this on Windows, and WHY can't I just download the appropriate packages to use in the program?
ALL I want to do is build a project in Eclipse deploy it to my phone, and then modify the necessary code. If Android is open source, why so many secret/internal packages? This is frustrating.
Any advice?
So, I found the code on github for the MMS/SMS application (for some reason, based on the AndroidManifest file, it calls my project I built, "ConversationList"). But I get TONS of errors involving the import com.google.android.mms.* package and a couple other packages.
AOSP applications like this are designed to be built as part of a firmware image, not as standalone apps.
But, HOW do I do this on Windows
Most likely, you don't. Cygwin might work. More likely, you will need to use OS X or Linux, such as running Linux in VirtualBox. And the result of your build will not run on anything, except as part of a firmware build that you use to replace the firmware on a device.
WHY can't I just download the appropriate packages to use in the program?
Because that application is designed to be built as part of a firmware image, not as a standalone app.
ALL I want to do is build a project in Eclipse deploy it to my phone, and then modify the necessary code.
Then find a project that is designed to be built as a standalone app as your starting point. Or, work on modifying the project you are trying to use to work as a standalone app, by ripping out all the functionality that depends upon things that are not in the app itself.
If Android is open source, why so many secret/internal packages?
They are not "secret". They are part of the firmware.
For example -- since you appear to be familiar with Windows -- it is entirely possible that "apps" like Control Panel are not designed to be built independently from the Windows OS. If you were able to download the source code to Windows and tried to load Control Panel into Visual Studio, it is eminently possible that you could not create some standalone CPANEL.EXE file just via that one project. Rather, you would need to use a customized Windows OS build process to build the whole OS, which would then contain a CPANEL.EXE that would run within that built version of the OS.
Most of the AOSP apps work this way. Some have been forked to create standalone apps -- K-9 Mail came from the early version of the AOSP email app. I have no idea if anyone has done this with the stock AOSP Messaging app or not.
You could instead fork TextSecure[0] as it is no system application but looks very similar to the stock messaging application. The AOSP application needs to be installed on /system/app which requires root and might not be what your customer wants.
Please note that this application is copylefted (GPLv3) so you'd have to give your client access to the source code under the terms of the GPL if you fork.
[0] https://github.com/WhisperSystems/TextSecure
I would like to create an App with python, but i need that it includes all it needs in order to operate correctly. I have saw this post about the ability to sell the app via and Market, but it didn't have a final answer there.
Currently the best solution i could find, is at this pdf chapter (from Pro SL4A Apress book), but still it seems that even if i create an .apk file, the user whom install that app would have to have the SL4A on his Android device.
Is there a way to incorporate the SL4A in the .apk file, or better yet, to incorporate just the needed stuff ?
As far as I'm aware, APKs created this way don't include the script interpreters that SL4A provides. According to the PDF you posted, it should request for SL4A and the relevant script interpreter to be installed when the APK is installed, however.
This question is now quite old, but for any other users who might come by here, it is now possible to embed the Python interpreter in an APK package. Look at this project for instructions and methods of doing so.
so what actually happens when compiling an APK via the method described in the book is a little bit different than what you have described. What actually happens is that upon installation of the APK file it will check to see if the user has Python installed, not SL4A. If the user does not have Python installed it will prompt for a download, similar to how certain applications prompt to install BusyBox in order to use certain commands. This means that the user doesn't need to have a scripting environment, or in fact even know what python is.
As for compiling 3rd party modules/libs into your APK, what happens is when you are compiling in Eclipse it will point to the folder on the computer containing python, and compile from there. That means that all you need to do in order to get extra modules or libraries into the APK are to make sure that they are included in the folder that Eclipse looks to when compiling the APK. By default I think that is your native Python folder, but I'm not 100% sure so somebody please correct me if I am wrong.
Hope this helps!
Is there a better way to test apk files without actually having to buy an Android phone?
I have to test several apk files and i don't want to use the Eclipse to do this as it would be a lot of downloading just for testing as i don't even want to code.
I am looking for an application which would provide an interface which would ask me which version of Android do i want to run and what screen size do i want and then install the apk for me that i want to test?
Is there such a software available?
thank you in advance.
You don't need Eclipse to run the emulator. You can simply download the android SDK HERE. After you've extracted the SDK, run the file "android" in the tools folder (in linux at least), download which platforms you want to use (1.6, 2.1, etc) and create an emulator. It's fairly simple to do.
Many phone makers offer such a service...
Here's one to start you out:
http://developer.motorola.com/testing/
-I_Artist
This looks like what you are looking for. I never used it myelf though. The reviews seem to be ok as well. not sure if you can choose what api's you want to use though.
http://www.addictivetips.com/windows-tips/download-google-android-emulator/