I want to make an application and I need to know the programming languages that were used in similar applications in google play store. I tried to contact the owners of the application but there is no response.
i tried to see the app files using file manager but didn't work.
Simplest way is decompile apk and you can see java, c++ or other lang.
If you will describe the app that you're trying to create, some people here may be able to make suggestions. In general though, android apps are written in either Java or Kotlin. If you're just starting out, start with Java.
Related
I just read these topics:
Is there a way to get the source code from an APK file?
How to avoid reverse engineering of an APK file?
...and realized that you can't develop an android program without being possible for its .apk file to be reverse engineed.
You can use Proguard and tricks but still your code will not be completely hideable.
So if you want to make an app completely close-source what you have to do?
For example, what Facebook and Snapchat and Messenger (e.g) did so their source codes are not accessible?
Also, another question: if you upload your app on google play, then a user can get your .apk?
Thanks in advance!
Every app may be reverse engineered.
The difference is only time needed to do it.
Proguard is a minimal solution whish requires minimal efforts and provides a level of protection that is enough in most cases.
You may also use other obfuscation tools (for example, DexGuard).
Another way is making shared libraries with Android NDK and using it. Reverse engineering of native binaries is usually more difficult than Java classes.
Probably the only way to completely protect your algorithms is to remove them from user's device - move to a server. In that way application will do a requests, but computation will be performed on your server.
As for extracting APK - it is possible, as Giorgos Pippos wrote.
From what I know, there are programs you can use to extract an apk from your phone. For example APK Extractor is listed in the Play Store.
You can use this kind of apps to get the apks you want.
I'm student and and my favorite language is C#.
However i must create my first application for android and I have just found something about Xamarin. Does it make sense to use that instead of Java? Beacouse Java really doesn't match me.
It's a academic project, but also I'd like to deploy that to Google Play Store.
In the Xamarin shop I found that I can develop my application on the free version, but propable i need Xamarin.Forms and buy INDIE license, isn't it?
Adam, I will greatly encourage you to write your first app in native Android. Xamarin is an amazing tool set and you should keep tuned in to Xamarin but be rest assured that Xamarin or any other non native development tool is not for the beginners nor the faint of heart.
The reason I encourage you to get started with native Android is because of Documentation, Examples and Getting Unstuck. When you run into problem with native Android, either Google already have a sample project that addresses that issue with code example, or it has already been asked, debated and answered in StackOverflow.
One thing that will help you though is the complexity of your first project, if you choose a complex app you may never ship it. If you choose a moderate app, then the issue of having to know Java is essentially a mute point because the framework provides most of the plumbing code you need to accomplish most basic use cases. The remaining Java you will pick up as needed.
Goodluck
It dosnt matter if your develop with Xamarin or native Java. You will always have to know about the Android Framework.
Futher you don't need to use Xamarin.Forms, you could also write the UI Part platform specific.
The need for Xamarin.Form is that you code your UI once and be able to deploy them to iOS, Android and WindowsPhone devices.
Ok, it's clear by question heading that I want to create android apps with HTML,CSS and JS. I know them very well and I just don't want to use SDK it's bulky, hard to understand and not User friendly just like other google products.
I have read this and many more articles but they lack when someone asks:
Can I Do it without that SDK?
So whilst you can easily code your entire project just using notepad,
compilation will need the Android SDK.
I just want to do it online or by installing a less bulky software that just packs my app in apk (like a zip). I know it's too much but if someone know how to do this exactly.
I'm pretty sure you need to use some Java to give your Android app functionality. JavaScript might work, but it depends on what exactly you want to do.
You also need other SDK tools to create APK packages. You could build your own tools to do that, since APKs aren't black magic (fortunately), but it would be tedious, cumbersome and fragile.
It's a lot easier to use an SDK to me.
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.
I need ur help..!
I m creating an app in android. The apps use the functions in the other apps which are already present. I want my app to be standalone. I can't use the functions in those app.
To be more clear, If i create an app for making video calls. The app needs to use the functions in the phone apps. can i just create an instance and use the functions or should i redo all the functions which are required?
It will be helpful if i get to know what will happen wen the app is inserted in the code base and compiled.? where ll the R.java file get created?
Could u suggest me some links to get a detail info about it?
developer.android.com is really useful when it comes to explaining the various features of android development, as well as some great code samples.
When you say you are using the functions of other apps, are you using intents or checking if the app is installed?
If there is an app that has the functionality you need, you can always set a home page that tells the user that these apps will be needed or change your application so it uses the features in android and not the third party apps.
Hope that helps!
If the apps don't provide an API or intent-filter for what you want to do, you cannot include/integrate them easily.
Unless you have a license to use components from the other apps and have access to their source code, you are going to have to re-implement the functionality you need from scratch or from a combination of available platform capabilities, libraries, and appropriately licensed example code.
(If you were content to leverage exported capabilities of other apps that had actually been installed on the device, you could do some things via intents. But you seemed to say this was not acceptable, that you needed to take capability from apps that would not be installed.)