Comcast XfinityStream Android App APK Fire TV Stick - android

I have a Amazon Fire TV Stick (Gen 2) and I have been trying to sideload my Comcast XfinityStream APK to the device so I can watch live TV from the service I pay for. It is successfully installed on the device, but when I open it, it just shows a black screen and goes back to the main menu on the Fire Stick. I used a couple of the older versions, which up until recently worked fine, but they have since retired them and now none of them work. I am trying to get their newest play store app release to work correctly.
My main question is this: what causes an Android app to open, show a black screen, and within no time, goes back to the main menu screen on an Android device, with no errors or messages displayed? Does the Fire TV stick, being that is Android-based, have a directory where I check for logs of some sort when this type of app behavior happens?
Since the Fire TV stick is Android-based architecture on 5.x Lollipop, it should load up the same way as it does on my phone, in theory, but it doesn't. I have downloaded the APK file and looked into the manifests file, but haven't seen anything in there or a few other places I've looked that could show some type of restriction or 'blacklisting', if you will, the Fire TV stick from being able to use it. The API levels look correct as well as the hardware requirements. Does anyone have an idea what this could be? Here is the manifests file when it was decompiled:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:"http://schemas.android.com/apk/res/android" android:versionCode="40201001" android:versionName="4.2.1.001" android:installLocation="auto" package="com.xfinity.cloudtvr" platformBuildVersionCode="24" platformBuildVersionName="7.0">
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="24" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission android:name="com.xfinity.cloudtvr.permission.C2D_MESSAGE" android:protectionLevel="signature|signatureOrSystem" />
<uses-permission android:name="com.xfinity.cloudtvr.permission.C2D_MESSAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<application android:theme="0x7f0c010c" android:label="#string/app_name" android:icon="0x7f0200da" android:name="com.xfinity.cloudtvr.XtvApplication" android:allowBackup="false" android:largeHeap="true" android:supportsRtl="true" android:resizeableActivity="false" android:networkSecurityConfig="0x7f060001">
<activity android:theme="0x7f0c010d" android:label="" android:name="com.xfinity.cloudtvr.view.BrowseActivity" android:launchMode="singleTop" android:windowSoftInputMode="20">
<intent-filter>
<data android:scheme="#string/localytics_push_key" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
<activity android:name="com.xfinity.cloudtvr.view.authentication.WebAuthCallbackHelperActivity" android:exported="true">
<intent-filter>
<data android:scheme="#string/partner_continue_url_scheme" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity android:name="com.comcast.cim.android.view.launch.IntentForwardingActivity" android:launchMode="singleTask">
<intent-filter>
<data android:scheme="#string/deep_linking_scheme" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<data android:scheme="#string/universal_deep_linking_scheme_1" />
<data android:host="#string/universal_deep_linking_host_1" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<data android:scheme="#string/universal_deep_linking_scheme_2" />
<data android:host="#string/universal_deep_linking_host_1" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<meta-data android:name="LOCALYTICS_APP_KEY" android:value="#string/localytics_app_key" />
<receiver android:name="com.localytics.android.ReferralReceiver" android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
<activity android:name="com.localytics.android.PushTrackingActivity" />
<receiver android:name="com.google.android.gms.gcm.GcmReceiver" android:permission="com.google.android.c2dm.permission.SEND" android:exported="true">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="com.xfinity.cloudtvr" />
</intent-filter>
</receiver>
<service android:name="com.localytics.android.GcmListenerService" android:exported="false">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
</intent-filter>
</service>
<service android:name="com.localytics.android.InstanceIDListenerService" android:exported="false">
<intent-filter>
<action android:name="com.google.android.gms.iid.InstanceID" />
</intent-filter>
</service>
<service android:name="com.xfinity.common.analytics.LocalyticsCrashReportingIntentService" android:exported="false" />
<activity android:name="com.xfinity.common.view.LaunchActivity" android:launchMode="singleTop">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:theme="0x7f0c0200" android:label="" android:name="com.xfinity.cloudtvr.view.authentication.EligibilityCheckActivity" android:launchMode="singleTop" android:windowSoftInputMode="10" />
<activity android:name="com.comcast.cim.android.view.settings.SignoutActivity" android:noHistory="true" />
<activity android:theme="0x7f0c010e" android:label="" android:name="com.xfinity.cloudtvr.view.PlayerActivity" android:launchMode="singleTop" android:configChanges="orientation|screenSize" android:windowSoftInputMode="20" android:parentActivityName="com.xfinity.cloudtvr.view.BrowseActivity">
<meta-data android:name="android.support.PARENT_ACTIVITY" android:value=".view.BrowseActivity" />
</activity>
<activity android:theme="0x7f0c0203" android:label="#string/settings" android:name="com.xfinity.cloudtvr.view.settings.XtvSettingsActivity" />
<receiver android:name="com.xfinity.cloudtvr.inhome.ConnectionChangedBroadcastReceiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</receiver>
<service android:name="com.xfinity.cloudtvr.downloads.XtvDownloadService" android:exported="false" />
<service android:name="com.xfinity.cloudtvr.downloads.XtvDownloadsNotificationReceiver$XtvNotificationBuilderService" android:exported="false" />
<service android:name="com.xfinity.cloudtvr.model.resumepoint.ResumePointSyncIntentService" android:exported="false" />
<service android:name="com.xfinity.cloudtvr.model.user.parentalcontrols.ParentalControlsSyncIntentService" android:exported="false" />
<service android:name="com.xfinity.cloudtvr.downloads.DownloadUpdateService" android:exported="false" />
<service android:name="com.xfinity.cloudtvr.downloads.DownloadPermCacheReloadService" android:exported="false" />
<activity android:name="com.xfinity.cloudtvr.view.settings.SettingsWebViewActivity" />
<service android:name="com.xfinity.common.user.FavoritesSyncIntentService" />
<activity android:theme="#*android:style/Theme.Translucent" android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />
<activity android:theme="#style/Theme_IAPTheme" android:name="com.google.android.gms.ads.purchase.InAppPurchaseActivity" />
<activity android:theme="#*android:style/Theme.Translucent.NoTitleBar" android:name="com.google.android.gms.common.api.GoogleApiActivity" android:exported="false" />
<meta-data android:name="com.google.android.gms.version" android:value="#integer/google_play_services_version" />
</application>
</manifest>
I have been looking at this in notepad, so don't have the best view to look at all of the code and I am sort of new to Android coding and app development so I am just trying to see if anyone else who develops apps more in depth would know where to look and how to possibly fix the issue. I have tried installing Android System Webview and Google Chrome on the Fire TV stick without issues and that is what made the app work in its previous versions that have now since been retired.
Does anyone know where or what I could look for in the decompiled code or files that may impact/restrict the app when it is trying to start on the Fire TV Stick?
Here is the APK file version I am using: http://www.apkmirror.com/apk/comcast/xfinity-stream/xfinity-stream-4-2-1-001-release/xfinity-stream-4-2-1-001-android-apk-download/
I am sure this thread will be of much needed help for others as well because there are a bunch of people who have sideloaded this app and who are now experiencing this issue trying to get a new APK file up and running on the Fire TV Stick.

Related

App icon doesn't appear after implementing deep links to my app

I'm developing an app in Android Studio it works pretty well, but after implementing deep links to my launching activity my app doesn't you the app icon in the menu, I know the app is installed cause in Setting>Applications it appears. I know the problem is in the manifest.xml, so I'll leave a copy down bellow.
I'll love to hear about your solutions, by the way if you are reading this thanks.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.dev.misterj.nocherd">
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permision.CALL_PHONE"/>
<uses-permission android:name="android.permission.MANAGE_OWN_CALLS"/>
<uses-permission android:name="android.permission.READ_CALL_LOG"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="AIzaSyAiJNpq-********************" />
<application
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:roundIcon="#mipmap/ic_launcher_round"
android:supportsRtl="true"
android:usesCleartextTraffic="true"
android:networkSecurityConfig="#xml/network_security_config"
android:theme="#style/AppTheme">
<activity android:name=".StartActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE" />
<!-- Accepts URIs that begin with "https://myapp.com/place” -->
<data android:scheme="https" android:host="myapp.com" android:pathPrefix="/place" />
<!-- Accepts URIs that begin with "myapp://place” -->
<data android:scheme="myapp" android:host="place" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:label="#string/app_name"
android:theme="#style/AppTheme.NoActionBar">
</activity>
</manifest>
You should separate the intent filters, also your manifest file is not well-formatted. you should close the application tag. you can open it with an external application like google chrome, it will tell you if the XML is not in correct format.
<activity android:name=".StartActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="myapp" android:host="place"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https" android:host="myapp.com" android:pathPrefix="/place" />
</intent-filter>
</activity>
it's important that you create separate filters when your intention is to declare unique URLs (such as a specific combination of scheme and host) because multiple <data> elements in the same intent filter are actually merged together to account for all variations of their combined attributes. if you combine them it actually supports https://place and also supports myapp://myapp.com/place.
So you should separate them.

How can I open my React Native App from the browser?

I would like to open my app from the browser.
example: I open a browser, type in: https://open.my.app, or app://www.example.com and have my app as an option come up.
I read about Deep Links and I am quite sure I set up my project properly, YET nothing happens when I either try to type and run: https://open.my.app, app://www.example.com
My AndroidManifest:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.somemobileapp">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<application
android:name=".MainApplication"
android:label="#string/app_name"
android:icon="#mipmap/ic_launcher"
android:allowBackup="false"
android:theme="#style/AppTheme">
<activity
android:name=".MainActivity"
android:launchMode="singleTask"
android:label="#string/app_name"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.BROWSABLE" />
<!-- Change these two in the future to a proper one -->
<data android:scheme="https" android:host="www.example.com" />
<data android:scheme="app" android:host="open.my.app" />
</intent-filter>
</activity>
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
</application>
</manifest>
So even after this, it's not working.
I know it will sound strange but keeping the data tag on first worked for me
<intent-filter>
<!-- data on first -->
<data android:scheme="http" android:host="abc.in"/>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.BROWSABLE"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>

Android app does not install with intent.action.VIEW

When I add an intent filter (to enable Google to crawl my app content and allow users to enter my app from search results) then my app still runs from Android Studio on my phone but it no longer installs.
My manifest is below, I have commented out the added intent filter to make it install again, so now I get a warning that it is not indexable by Google search.
What can I do so it installs and is indexable?
This is my first app so apologies if this is obvious but I appreciate any help. Thanks.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.somename.myappname">
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:supportsRtl="true"
android:theme="#style/AppTheme">
<activity android:name=".MainActivity"
android:windowSoftInputMode="stateHidden">
<intent-filter>
<!--action android:name="android.intent.action.VIEW" /-->
<action android:name="android.intent.action.MAIN" />
<!--category android:name="android.intent.category.DEFAULT" /-->
<!--category android:name="android.intent.category.BROWSABLE" /-->
<category android:name="android.intent.category.LAUNCHER" />
<!--data android:scheme="somename"
android:host="myappname" /-->
</intent-filter>
</activity>
<activity android:name=".ChildActivity">
</activity>
</application>
</manifest>
I seem to have found the solution. There should be 2 separate intent filters ...
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="http"
android:host="www.mywebsite.com"
android:pathPrefix="/myappname" />
</intent-filter>

Registering my React Native App to the ShareAction possibilities in Android

I have found a several of reverse examples: sending from a React App to another one using intents.
I have found a blog post of a guy explaining how to do this with IOS.
But not on android. :(
What I understand from there is I need to add something in the `AndroidManifest.xml' file:
<activity android:name=".ShareLink">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>
Am I right that this is the APP_ROOT/node_modules/react-native/ReactAndroid/src/main/AndroidManifest.xml file?
Should it look like that then?
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.facebook.react">
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<application />
<activity android:name=".ShareLink">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>
</manifest>
How do I create the Intent?
Once my app is in the list (wohoo), how do I get back the data in the React App?
Any help would be highly appreciated. I'm a web developper, love React, but completely n00b to Android.
To get my app in the share list, it wasn't so hard at the end:
In <APP_ROOT>/android/app/src/main/AndroidManifest.xml:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.appname">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:allowBackup="true"
android:label="#string/app_name"
android:icon="#mipmap/ic_launcher"
android:theme="#style/AppTheme">
<activity
android:name=".MainActivity"
android:label="#string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
</application>
</manifest>
But once it is in the list, to make it accessible to the React App, that was complicated. I detailed the steps in the next answer following another subquestion: https://stackoverflow.com/a/33969430/1620081

Android Studio: App icon doesn't appear in the home screen or app list

I have a serious problem with my self developed app.
Long Story:
I have created an app and developed it on my desktop pc. Because I need to show it to my customer, I decided to install android studio on my Notebook and try the app there. I imported the project on my Notebook and started Android Studio, I ran the project, the app started and worked like always on my smartphone but......when I went back to the homescreen the Icon was missing (while on my desktop pc version was shown) and it wasn't even in the app list, but if I go on "Settings" --> "Manage applications", it's shown there, I can unistall or stop it, but because I don't have an icon I can't start it again if I don't rerun the app with Android Studio. I went back to my desktop pc and tried to rerun the app from there, but nothing changed the icon is still missing.
Short Story: After reinstalling my app on my phone with android studio from my notebook, the app icon is missing from the home screen and application list, but I can see it in "Settings" --> "Manage applications". If I go back to my original pc where I developed the app and try to rerun it, the result is the same...icon missing.
I read all the post that are similar to my problem on Stackoverflow, but nothing helped me to resolve it. I hope that someone can help me about it.
I posted the AndroidManifest.xml if needed but I can't post all the code because of privacy/copyright, sorry. I tried to write in the most correct english I could, I apologize in advance if my writing is horrible.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.steel.bluetoothdatatransfer" >
<uses-sdk
android:minSdkVersion="12"
android:targetSdkVersion="22" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.WRITE_SMS" />
<uses-permission android:name="android.permission.SMS_DELIVER_ACTION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<!-- <uses-permission android:name="android.permission.BROADCAST_SMS" /> -->
<application
android:allowBackup="true"
android:icon="#drawable/ic_bt"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="#string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<action android:name="android.intent.action.SEND" />
<action android:name="android.intent.action.SENDTO" />
<data android:scheme="sms" />
<data android:scheme="smsto" />
<data android:scheme="mms" />
<data android:scheme="mmsto" />
</intent-filter>
</activity>
<receiver
android:name=".RecMex"
android:enabled="true"
android:exported="true"
android:permission="android.permission.BROADCAST_SMS" >
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
<!-- BroadcastReceiver that listens for incoming MMS messages -->
<receiver
android:name=".MmsReceiver"
android:enabled="true"
android:exported="true"
android:permission="android.permission.BROADCAST_WAP_PUSH" >
<intent-filter>
<action android:name="android.provider.Telephony.WAP_PUSH_DELIVER" />
<data android:mimeType="application/vnd.wap.mms-message" />
</intent-filter>
</receiver>
<!-- Activity that allows the user to send new SMS/MMS messages -->
<activity
android:name=".ComposeSmsActivity"
android:label="#string/title_activity_compose_sms" >
<intent-filter>
<action android:name="android.intent.action.SEND" />
<action android:name="android.intent.action.SENDTO" />
<data android:scheme="sms" />
<data android:scheme="smsto" />
<data android:scheme="mms" />
<data android:scheme="mmsto" />
</intent-filter>
</activity>
<!-- Service that delivers messages from the phone "quick response" -->
<service
android:name=".HeadlessSmsSendService"
android:enabled="true"
android:exported="true"
android:permission="android.permission.SEND_RESPOND_VIA_MESSAGE" >
<intent-filter>
<action android:name="android.intent.action.RESPOND_VIA_MESSAGE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="sms" />
<data android:scheme="smsto" />
<data android:scheme="mms" />
<data android:scheme="mmsto" />
</intent-filter>
</service>
<!-- BroadcastReceiver that listens for incoming SMS messages -->
<receiver
android:name=".SmsReceiver"
android:permission="android.permission.BROADCAST_SMS" >
<intent-filter>
<action android:name="android.provider.Telephony.SMS_DELIVER" />
</intent-filter>
</receiver>
<activity
android:name=".DeviceListActivity"
android:label="#string/intestazione"
android:theme="#android:style/Theme.Holo.Dialog"
>
</activity>
</application>
It is happening because you passed everything into one intent filter. Try to separate them per use case or at least separate Launcher and Main filter.
Like this:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<action android:name="android.intent.action.SEND" />
<action android:name="android.intent.action.SENDTO" />
<data android:scheme="sms" />
<data android:scheme="smsto" />
<data android:scheme="mms" />
<data android:scheme="mmsto" />
</intent-filter>
Adding different intent filter can solve your problem
<activity
android:name=".activities.SplashActivity"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"></action>
<category android:name="android.intent.category.DEFAULT"></category>
<category android:name="android.intent.category.BROWSABLE"></category>
<data android:host="example.com"></data>
<data android:scheme="http"></data>
<data android:pathPattern="/.*"></data>
</intent-filter>
</activity>
I had the same problem but the solutions above did not work for me. I had to remove the label attribute to make it appear on the screen again.
Before the MainActivity looked like this:
<activity
android:name=".HomeTabs.NavigationHome"
android:label="#string/title_activity_navigation_home">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
and afterwards like this:
<activity
android:name=".HomeTabs.NavigationHome"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
If you're already sure that you have correctly defined your app logo,
problem would be using android:scheme inside of launcher activity. See below post:
https://stackoverflow.com/a/8134686/2231702

Categories

Resources