Google Play Store App Reject - React native - react-native

App Reject2I have tried to upload my App on store, My App rejected every time .
** Issues ** : Violation of permission Policy.
Requested permissions do not match core functionality of the app
You declared Default SMS handler (and any other core functionality usage while default handler) as the core functionality of your app. However, after review, we found that your app does not match the declared use case(s). Learn more about permitted uses and exceptions.
Please either:
• Make changes to your app so that it meets the requirements of the declared core functionality or,
• Select a use case that matches your app’s functionality

Go android folder in your project and locate manefest.xml file in it.
Remove all the unnecessary permissions that were generated during project setup.
Google play like it that, you should only ask for permission that your App is using and you must state it in data policy how you are using the data in the App
Make sure you test all the functionalities before you upload.
Google is trying to prevent logic bomb here.

Finally App was published.
If you app continuous reject, Next time going to before submit check the following file locations / list available.
Upload new build and play store automatically remove the previous uploaded file(if already 3 build upload and got rejected & again upload a new 3 build with latest version code )

Related

My React Native Expo cli app rejected from app store due to the following causes “Guideline 5.1.1 — Legal — Privacy — Data Collection and Storage”

We noticed that your app requests the user’s consent to access the photos, but doesn’t sufficiently explain the use of the photos in the purpose string.
To help users make informed decisions about how their data is used, all permission request alerts need to explain how your app will use the requested information.
Next Steps
Please revise the purpose string in your app’s Info.plist file for the photos to explain why your app needs access and include an example of how the user’s data will be used.
You can modify your app’s Info.plist file using the property list editor in Xcode.
But my app is developed by “React Native” expo cli. the app.json file configuration is shown following below also I have attached the app.json file of my application
EXPO SDK Version is “expo”: “44.0.0”,
React Native Version is “react-native”: “0.64.3”,
How I can overcome it? please help me

Expo Notification askAsync() - Is there a way to customize the message?

I am using EXPO on a react native project and want to ask the user for push notification permission.
When I use the const {status} = await Permissions.askAsync(Permissions.NOTIFICATIONS); the message that appears is
"Expo" would like to send you notifications. Notifications may include sounds, badges, alerts and icon badges. These can be configured in settings.
My end user doesn't know what "Expo" is, they just know the app name. Is there a way for me to customize the "Expo" part to the app name?
How have people handled this when their app is ejected and push to the app store?
You can find the answer in here: https://docs.expo.io/distribution/app-stores/?redirected
Which says:
System permissions dialogs on iOS
If your app asks for system permissions from the user, e.g. to use the device's camera, or access photos, Apple requires an explanation for how your app makes use of that data. Expo will automatically provide a boilerplate reason for you, such as "Allow cool-app to access the camera", however these must be customized and tailored to your specific use case in order for your app to be accepted by the App Store. To do this, override these values using the ios.infoPlist key in app.json, for example:
"infoPlist": {
"NSCameraUsageDescription": "This app uses the camera to scan barcodes on event tickets."
},
The full list of keys Expo provides by default can be seen here. Unlike with Android, on iOS it is not possible to filter the list of permissions an app may request at a native level. This means that by default, your app will ship with all of these default boilerplate strings embedded in the binary. You can provide any overrides you want in the infoPlist configuration. Because these strings are configured at the native level, they will only be published when you build a new binary with expo build.
You probably use Expo Go to develop your app , when you create standalone app (when you deploy the apk) it will show the app name that you specified in app.json.

Firebase Dynamic Links MinimumVersion behavior

I'm creating Firebase Dynamic Links programmatically in an Android and iOS apps.
Both apps are already available in Google Play and the App Store, so I want to use MinimumVersion to redirect users to the appropriate store if they are using previous versions.
The iOS parameters documentation states:
The version number of the minimum version of your app that can open the link. This flag is passed to your app when it is opened, and your app must decide what to do with it.
So if I understand it correctly, previous version would not be able to use it, as the code to decide what to do with it, doesn't exist in the current iOS version?
The Android parameters documentation states:
The versionCode of the minimum version of your app that can open the link. If the installed app is an older version, the user is taken to the Play Store to upgrade the app.
But when I try it, the Android device still suggests the current app to handle the intent, and doesn't redirect the user to upgrade it.
When I choose the app it opens it instead of redirecting.
What can cause this behavior?
Am I missing something in my understanding of how Firebase Dynamic Links suppose to work?

How can i get parameters from play store download link

I am currently developing a mobile app with react-native and this app contain a invitation code.
Store download link will have a invitation code parameter.
I want to get this parameter from downloaded apps via store download link.
How can i do this on react-native ?
Thanks in advance
Use Firebase Dynamic Links
Firebase Invites makes it simple for users to send content to their friends, over both SMS and email, by ensuring that referral codes, recipe entries, or other shared content gets passed along with the invitation—no cutting-and-pasting required.
Documentation https://firebase.google.com/docs/dynamic-links/
How does it work?
You create a Dynamic Link either by using the Firebase console, using a REST API, iOS or Android Builder API, or by forming a URL by adding Dynamic Link parameters to a domain specific to your app. These parameters specify the links you want to open, depending on the user's platform and whether your app is installed.
When a user opens one of your Dynamic Links, if your app isn't yet installed, the user is sent to the Play Store / App Store to install your app (unless you specify otherwise), and your app will open. You can then retrieve the link that was passed to your app and handle the deep link as appropriate for your app.
For react-native use react-native-firebase https://www.npmjs.com/package/react-native-firebase
and
https://rnfirebase.io/docs/v5.x.x/links/reference/links

Is it possible to use Firebase with a Windows 8 app?

I'm hoping to use Firebase in my Windows 8 app made using WinJS. Here is how I am trying to write to the root of my Firebase:
var dataRef = new Firebase("https://<firbaseName>.firebaseio.com");
dataRef.set("I am now writing data into Firebase!");
However, this gives me the following error in the JavaScript console:
Can’t load <https://<firebaseName>.firebaseio.com/.lp?start=t&ser=66595697&cb=2&v=5>. An app can’t load remote web content in the local context.
I've tried to add https://[firebaseName].firebaseio.com/* to my Content URIs in my app manifest but that doesn't seem to be the solution. Does anyone know if it's possible to get Firebase working inside of a Windows 8 app?
You should be able to use firebase.js natively in a Windows 8 (WinJS) app. Just download a copy, and embed it with your app. If you run into any issues, please email support#firebase.com.
I wanted to add that is not possible to use the regular firebase.js file alone. (5/5/15 and firebase.js 2.2.4)
The issue is firebase by default tries to do long polling and calls a script from firebase which violates CSP.
Firebase.js has a function called isWindowsStoreApp() but in my tests it doesn't work.
What #Michael Lehenbauer said in an earlier comment triggers it to only use websockets which is local and CSP safe.. Just call
Firebase.INTERNAL.forceWebSockets();
early and it works...