Need the detail or description of permission.C2D_MESSAGE - google-cloud-messaging

In my app, I use the GCM push notification. All sample app for push notification has this two permission. I need to know the reason for this permission. I couldn't find any documentation of permission.C2D_MESSAGE permission.
<permission android:name="YOUR_PACKAGE_NAME.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="YOUR_PACKAGE_NAME.permission.C2D_MESSAGE" />

Related

My app was rejected due to REQUEST_INSTALL_PACKAGES

Due to Google's new policy, my app was not approved. Here is the reply i got
We’re reaching out in response to your recent appeal regarding enforcement of your app. We are unable to approve your app’s use of REQUEST_INSTALL_PACKAGES permission because the use of the permission is not directly related to the core purpose of the app.
I have tried the workaround I found on starkoverflow. Like adding
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" tools:node="remove" />
But I don't see it working because I can still see the REQUEST_INSTALL_PACKAGES permission still listed in the manifest merger debug report. Which will eventually make them reject the app again
If anyone can assist, I would be grateful.

Issue: Violation of Permissions policy, Call Log Permission

I made an app where first it reads the call logs and also requests for contacts to match the numbers to get contact images and display to the user within my application. After selecting any contact number, it opens that user's conversation to WhatsApp directly. I have also filled the declaration form. However, I received many rejection emails that call logs is not my core functionality and I should remove this feature from my mobile application.
As you can see that it is my core functionality to display the call logs and contacts to the user so that he can select to open it in WhatsApp Conversation Directly.
The permissions i declared in the manifiest file as shown below
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.crymzee.saveless_new">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.READ_CALL_LOG"/>
The Picture of Google Play rejection is added below
Is there any other way to get call logs or which use case matches my App functionality?
What functionalities in your app require SMS and Call Log permissions?
Default SMS handler
Default Phone handler
Default Assistant handler
Transactional backup and restore for users and archive for enterprise (time-limited/non-continuous)
Enterprise archive, CRM, and device management
Caller ID, spam detection, and blocking
Connected device companion apps (for example, smartwatch or automotive)
Cross-device synchronization or transfer of SMS or calls
SMS-based financial transactions and related activity where access is restricted to financial SMS transactions (for example, 5-digit messages)
SMS based money management
Proxy calls
Services - Carrier
Services - OEM
Device Automation
Physical safety / emergency alert apps (e.g., senior safety)
Call-based OTP account verification
Using SMS_CB_RECEIVED for customer communications (e.g., Smart Zone Cast service)
Write and Show Call History in Dialer
In-vehicle hands-free use or projected display
Anti-SMS Phishing

How to create react native firebase dynamic links?

I am working on react native app. My app is having login and signup page. After signup I am sending an email to user to verify account. User will get a link to verify account, after clicking on that link I am redirecting user to url where I am verifying him. Now I want to redirect the user inside "my app" verification screen if he is verifying using mobile phone.
Is this possible with Firebase Dynamic Links??
I have created firebase project and integrated with my android app. After this I have created dynamic link for my app using firebase console:: "https://myapp.page.link"
Now I am having this section on firebase console::
After this I clicked on "New Dynamic Link", but able to add deep link and next settings. What should be the deep link for my case and where it used??
Inside AndroidManifest.xml file I have added this intent activity::
<activity
android:name=".MainActivity"
android:launchMode="singleTask"
android:label="#string/app_name"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
android:windowSoftInputMode="adjustResize">
and intent-filter as follows::
<intent-filter android:label="filter_react_native">
<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.page.link" />
</intent-filter>
After this I have open this url in chrome(in my mobile):: "http://myapp.page.link", but it shows Invalid dynamic link because I have not completed deep link section. You can check the screenshot::
Please tell me what will be deep link for my case and where it used??
What are the other required changes I have do inside AndroidManifest.xml?
What react native code I need to add to redirect user inside specified screen on opening this url?

Open react native app from email link for reset password implementation

I have implemented a react native app with deep linking implementation. I have successfully open my app using
adb shell am start -W -a android.intent.action.VIEW -d sports://sport
this command open app in simulator, So deep linking concept working fine.
But how to open the app in mobile while clicking on email link.
Is anyone know how link is build for sending in email and once i click on email link from mobile my app open?
I have also installed "Deep link Tester" app from google app store and running same link on it which will opening my app successfully.
Code for Android setup
<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="sports" android:host="sport" />
</intent-filter>
I have added intent-filter in activity tag of AndroidManifest.xml file.
What I want to achieve:
When user press forgot password from mobile app, I will send email with token for reset there password. So when user click on email link I want to open my app and redirect him to reset password route
What is problem:
I am not able to open react-native app from mail
I am able to achieve deep linking in react native with help of Branch.io provide solution for deep linking for mobile app
Solution
I follow step given in below link of branch.io
React native implementation for deep linking with branch.io
With this step now i am able to open my app from emails with route implementation for open different pages in my app.

React Native Android application does't ask to use geolocation from user

In my React Native application I use geolocation. IOS app asks permission for using user geolocation but Android app automatically allows user's geolocation. How can I ask permission for it.
I don't think accessing location is enabled by default, you have to enable it as described in the Geolocation docs.
In your AndroidManifest.xml:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
To show the dialog asking for the permission on Android M (6.0) and newer, use the PermissionsAndroid module.