Pushwoosh not working in the release build of Unity - unity3d

I was trying to integrate Pushwoosh with Unity. The latest version needed me to actually use pro guard with gradle as there was multidex error. After that there were duplicate file errors because of proguard, which I fixed by creating a pro guard user.txt file and adding the following lines.
-keep com.pushwoosh.** {*;}
-dontwarn com.pushwoosh.**
Now when I have everything fixed and pushwoosh running properly in all devices, there comes certain devices which do not get notifications in the release build. (There are no problems with the debug build.)
Can anyone help me with this? What reason could there be?

I found the answer, seems like this issue was only occurring with Samsung phones. I searched around and tried adding this to the Manifest file. (In the "application" tag for those wondering.)
<service
android:name=".FirebaseInstanceIdRouterService">
<intent-filter>
<action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
</intent-filter>
</service>
<service
android:name=".FirebaseMessagingRouterService">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>
Seems like Samsung might have been using Firebase services in the background which conflicts with the pushwoosh using FCM services. Anyway..seems like this works for me.
Where I found it, for further study purposes.

Related

Google play apk crashes after downloading

After publishing and downloading it from google play, my game crashes only on the first startup. Does anyone know about this?
i am using google play services and google admob of the latest of versions.
My unity version : 2018.3.6f1
Help me here, I am stuck!
On research, found out that it could be an Admod problem and so remove the following code from your Admob Plugin Manifest.
<receiver
android:name="com.admob.android.ads.analytics.InstallReceiver"
android:exported="true">
<intent-filter>
<action
android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
If the problem still persists, delete the current Admob plugin folder and install the latest version from GoogleMobileAds.unitypackage

Problem with production download option in Android things Console

I'm developing an Android Things application for the company that I work for, the problem is in the Android Things Console, because I upload the signed apk for release but when I create the image there is only developer version of that image, we need a production image of the app (because the app after 1 day close and only show the configuration screen)
here a few images of our problem
<activity
android:hardwareAccelerated="false"
android:name=".HomeActivity"
android:screenOrientation="portrait"
android:theme="#android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.HOME"/>
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.IOT_LAUNCHER" />
</intent-filter>
</activity>
Thank you for raising this issue. This is an error in the documentation and we will get it corrected. Production images are not available for Raspberry Pi 3.
I upload the signed apk for release but when I create the image there is only developer version of that image, we need a production image of the app (because the app after 1 day close and only show the configuration screen)
This is not related to the image type you download or how you sign the APK. It's more likely because the system isn't recognizing your app as the HOME app, so it returns to the system UI after a crash. When you boot your device with the app installed, do you see it or the system UI?
I would recommend cleaning up your manifest entry to match the home activity example in the docs. The HOME and LAUNCHER categories should be in separate filters (because they won't be found together) and IOT_LAUNCHER is not longer used.

Google Voice Integration to App: Google unable to open my application

I am trying to search my app using google now voice command like: "Search something on APP_NAME".
And I am using it for my app Pluto (https://play.google.com/store/apps/details?id=com.tamal.voicesearch).
Now the problem is this voice search was working 2 weeks back (for my other apps). Now it is not working in some of my devices but in some it is working. More interestingly in all these devices voice search is working for application like Flipkart.
One weird solution:
I spend a complete day on researching on this issue and then cleared the data of my Google app and uninstall the Updates and suddenly it started working on my Samsung S4 device (Android version: 5.0.1 and Google App version 7.8.22.21 ), please check the attachment.
But in my other 2 devices Moto G4 (Android version: 7.0.0) and Nexus 5 (Android version: 6.0.1) it is still not working (even after clearing data and uninstalling updates of Google App). If I say "Search something on Pluto", it is doing web search.
I have researched but didn't get any explanation or solution for this behavior yet. Not understanding this inconsistency at all. I am using the following documentation for the same:
https://developer.android.com/guide/components/intents-common.html#Search
https://www.youtube.com/watch?v=PS1FbB5qWEI
My code is very simple.. the the following in the manifest..
<activity android:name=".SearchableActivity">
<intent-filter>
<action android:name="com.google.android.gms.actions.SEARCH_ACTION"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.VOICE" />
</intent-filter>
</activity>
And in Activity fetching the Query string..
if (intent != null && ACTION_VOICE_SEARCH.equals(intent.getAction())) {
String query = intent.getStringExtra(SearchManager.QUERY);
}
And
compileSdkVersion 26
Please help.
Working screen shot in Samsung S4
Not working screen shot in Moto G4

Admob and API version 8

I develop on an.. let's say: not ultramodern computer, and were doing fine so far developing with the emulator for API version 8. Now I try to use Admob (after meddling with "Adsense for Mobile Apps" which never displayed any ads for some reason), but it turns out that I need an API target of 13 to use it.
Is there any way to get it to run with 8?
In my Manifest file, I have defined
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="15" />
already. After my investigations and the tips I have read so far, I tried the 'reduced' set for the Android Manifest,
<activity android:name="com.google.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation" />
but running it on the v8 emulator produces a number of exceptions basically complaining that the required configChanges are not set.
I have read about a 'trick' of using an older Admob SDK, but also the warning of Google that from end of 2011, they won't display ads anymore and the new version must be used.
The worst thing is that I can't even run my own app on my connected mobile phone (HTC Legend, v2.3.7 / API 10) if I want to use Admob?!
Or maybe I am missing something, am quite frustrated right now.
There is a way. Check out this blog post, which applies to AdMob SDK 6.0 as well.
The TL;DR:
Set target in project.properties to android-13 or higher. You need the full set of configurations:
<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
As long as minSdkVersion is 8, you can still run on Android 2.2.

Multiple icons for one package? Android - Eclipse development

I am learning how to develop for Android slowly. I noticed that when I go to Applications on the emulator or on my actual phone that there are multiple icons all for my one app.
Does anyone know know how to stop this or why its there?
I have the manifest setup for every class like below: Not correct... I still haven't figured out why the manifest file is there, but know this was the problem.
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>