i'm developing a couple of apps at the moment one is an image-processing app, the other a google maps app. when i'm developing them i can only have one app at a time on the phone. is there any reason for this? my phone is a Samsung galaxy portal api2.1.
i'd like to have a few apps on my phone that are in the development process for interview purposes. Is this possible?
The only reason can be that the applications share the same package name. Android uses the package name to distinguish which application to launch (using the launcher or startActivity calls). Is there a reason for you to have the same package name for different applications?
Uninstall both apps on the device. Then after renaming the package names (all instances of them), run both again and it should work.
Related
The app I'm working on is an aggregator of sorts. The company coordinates with other app developers, gets their permission to market and push freemium versions of their apps within our app.
Basically, if you sign up with our app and pay $x, you get monthly access to a bunch of other apps that would've been more expensive if subscribed to directly.
This works but our app ends up needing to side-load the apps and it shows up in the app list and on the Home screen.
But, since we receive an authentic version of the apps from the developers themselves, is it possible for us to install the app on the user's phone without it showing up on the user's Home screen?
The idea is to ensure it doesn't look like we just helped them install an app on their phone.
We want those apps to be exclusively accessible via our app. It shouldn't be accessible via the phone's home screen or app list screen.
I imagine it could be possible since I've seen launchers do it. Some launchers come with smaller apps installed within them that's accessible only via their launcher platform. I'm not too sure how that's achieved though.
Thanks
You should ask your other apps developer to ship their app without the launcher category in the manifest file.
<category android:name="android.intent.category.LAUNCHER" />
Remove the above line from the launcher activity of other applications to prevent it from showing in launcher screen.
It shouldn't be accessible via the phone's home screen or app list screen.
While you can ask the developers to take steps to prevent their app from showing up in the launcher, you cannot prevent the installed app from showing up in the list of installed apps.
The idea is to ensure it doesn't look like we just helped them install an app on their phone.
Then do not install an app on their phone.
Some launchers come with smaller apps installed within them that's accessible only via their launcher platform.
If they do not show up as apps in the list of installed apps, then those are not apps, from an Android standpoint.
I am developing two android apps with android studio and for some reason I want just one of these apps can be installed on a device. I think I should check the package name of second app and prevent it from installing. Is there any way to do that? thanks.
You can not prevent any app from being installation. Instead you can stop your app from being running. I mean, when your app starts, check if specific application is installed, and if so stop your application.
An ordinary app cannot prevent another app from being installed. Malware authors would think that such a "feature" would be wonderful.
Device owner apps — mostly for IT departments at larger organizations — have some abilities here, though I forget whether they can block installation by package name.
My question may look strange but I'll try to explain somehow. Let's imagine there is an Android device with software that adjusts some settings based on application package name - it's a real-life scenario. This software may provide better performance for listed applications and there is no way to add my application to that list. What I'm capable of doing is to release my application under one of listed package names (not to Google Play, just provide APK on GitHub so that anyone who wants to use it will install it manually). And there comes my question:
is it legal to use some company's existing package name for my own application? Is it protected legally? My app is free & open source application.
Just to be clear: I'm not doing this to impersonate "real" application with bad intentions. I just want my application to use full range of device capabilities... And download page will state it clearly & visibly :)
In other words: can I release app with package name e.g. com.google.android.talk? I know that it won't override existing app if someone has it installed etc. (it's not my goal to override some application). I'm just talking about such possibility and legality.
This is totally legal, as you can use whatever String you want for your app/package name.
However, just doing this will most probably be not enough to "impersonate" the other app, as this would be a serious security flaw. First of all, there can never be two apps with the same package name installed.
If the app you speak about is created by a "serious" developer, say Google or one of the OEMs, it will check both package and signature of the app and will therefore know your app is not the same as the replaced app.
Also, when the user tries to install your app, a package conflict will happen, followed by the signature conflict. There are two scenarios here:
If the app you are replacing is a standard app, the user will be able to install your app from adb, but only after thay accept to completely wipe the data of the original app. You have probably seen this dialog while developing stuff.
If the app is provided by the OEM and has system permissions, the installation will simply fail, with no possibility to "overwrite" the app. This can be dodged by having the devices rooted, replacing the .apk file in the system directory and restarting the phone.
Please mind that none of the above will work by just uploading the .apk to the phone. This needs to be done from adb. On-phone installer will just fail.
THE SETUP:
Developing API 16 Android app with Eclipse and installing on Tablet when testing.
THE PROBLEM:
Every time I use Eclipse to install the app and run it on the actual tablet, it creates an application icon for every single activity in the application that is visible from the main dashboard, whether it is called or not.
THE QUESTIONS:
Why is this happening?
How do I stop it?
Loosely related question - I've seen many people looking for an easy way to make a simple installable file to put the appplication onto a tablet. I have considered using a signed application package and a third-party app installer from SD card. Are there any other suggested ways to do this.
Why is this happening?
If we have to guess, it's because you have the MAIN/LAUNCHER <intent-filter> on all those activities in your manifest.
How do I stop it?
Only put that <intent-filter> on the activity (or activities) that should appear in the launcher.
I've seen many people looking for an easy way to make a simple installable file to put the appplication onto a tablet.
I have no idea what you consider "a simple installable file" is.
I have considered using a signed application package and a third-party app installer from SD card.
I have no idea what you consider "a third-party app installer" to be.
When developing an iOS app one can register or claim an app name by creating an entry in iTunesConnect and supplying placeholder descriptions and screenshots. Is there a similar process in the Android app store?
I'm not interested in squatting on app names. I'm just porting an iOS app to Android and I'd like to have an identical app name.
I dont think there is an equivalent in the android ecosystem. Here are a couple of suggestions which may not guarantee the name, but may help in some ways.
1) You can publish a bare minimum app with the correct package name (like com.company.appname). But I think the actual app name part will still be pretty open.
2) Another way may be to buy a .com domain for your app (if it is still available). It may sound far fetched but I believe (I may be wrong) people take that into account to avoid getting into trademarks & copyrights issues. If you have an app that is good enough for being published in multiple platforms, then buying a domain makes sense.