My app successfully auto start in some devices like Sony Xperia, OnePlus 3, Lyf, Micromax. But doesn't in Xiaomi. Then I found on StackOverflow that I have to give auto-start permissions to my app in Xiaomi Built-in Startup manager. I have also done that but my app doesn't auto-start. Here is the manifest file:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.missingcell.trackerapp"
android:installLocation="internalOnly">
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.READ_CALL_LOG" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<!-- for card.io card scanning -->
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-feature
android:name="android.hardware.camera"
android:required="false" />
<uses-feature
android:name="android.hardware.camera.autofocus"
android:required="false" />
<application
android:name="com.missingcell.trackerapp.AppController"
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme">
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="AIzaSyApCFp8fEsll0RO114zLWKQQ6EexTM488c" />
<meta-data
android:name="com.google.android.gms.version"
android:value="#integer/google_play_services_version" />
<activity
android:name="com.missingcell.trackerapp.activities.Login"
android:label="#string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.missingcell.trackerapp.activities.ChildDetails"
android:label="#string/title_activity_second">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.missingcell.trackerapp.MainActivity" />
</activity>
<service
android:name="com.paypal.android.sdk.payments.PayPalService"
android:exported="false" />
<activity android:name="com.paypal.android.sdk.payments.PaymentActivity" />
<activity android:name="com.paypal.android.sdk.payments.LoginActivity" />
<activity android:name="com.paypal.android.sdk.payments.PaymentMethodActivity" />
<activity android:name="com.paypal.android.sdk.payments.PaymentConfirmActivity" />
<activity android:name="com.paypal.android.sdk.payments.PayPalFuturePaymentActivity" />
<activity android:name="com.paypal.android.sdk.payments.FuturePaymentConsentActivity" />
<activity android:name="com.paypal.android.sdk.payments.FuturePaymentInfoActivity" />
<activity android:name="com.paypal.android.sdk.payments.PayPalProfileSharingActivity" />
<activity android:name="com.paypal.android.sdk.payments.ProfileSharingConsentActivity" />
<activity
android:name="io.card.payment.CardIOActivity"
android:configChanges="keyboardHidden|orientation" />
<activity android:name="io.card.payment.DataEntryActivity" />
<activity android:name="com.missingcell.trackerapp.MainActivity"></activity>
<activity android:name="com.missingcell.trackerapp.activities.RegisterActivity"></activity>
<activity android:name="com.missingcell.trackerapp.activities.BuyPro"></activity>
<receiver android:name="com.missingcell.trackerapp.call.AlarmReceiver">
<intent-filter android:priority="9991000">
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
<action android:name="android.intent.action.PHONE_STATE" />
<action android:name="in.deepakpandey.AlarmReceiver"></action>
</intent-filter>
</receiver>
<receiver android:name="com.missingcell.trackerapp.sms.SMSReceiver">
<intent-filter android:priority="9991000">
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
<action android:name="android.provider.Telephony.SMS_SENT" />
<action android:name="in.deepakpandey.SMSReceiver" />
</intent-filter>
</receiver>
<receiver
android:name=".gps.GpsTrackerBootReceiver"
android:enabled="true"
android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.QUICKBOOT_POWERON" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
<receiver android:name="com.missingcell.trackerapp.gps.GPSReciver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.QUICKBOOT_POWERON" />
</intent-filter>
</receiver>
<receiver
android:name="com.missingcell.trackerapp.utils.APIReciver"
android:enabled="true"
android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
<intent-filter android:priority="9991000">
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.QUICKBOOT_POWERON" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
<receiver android:name="com.missingcell.trackerapp.utils.NotificationReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.QUICKBOOT_POWERON" />
</intent-filter>
</receiver>
<receiver
android:name="com.missingcell.trackerapp.utils.DemoDeviceAdmin"
android:permission="android.permission.BIND_DEVICE_ADMIN">
<intent-filter>
<action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
</intent-filter>
<!-- This is required this receiver to become device admin component. -->
<meta-data
android:name="android.app.device_admin"
android:resource="#xml/device_admin" />
</receiver>
<service
android:name="com.tuenti.smsradar.SmsRadarService"
android:exported="false"
android:label="#string/app_name" />
</application>
</manifest>
It doesn't new on Xiaomi because Xiaomi has a feature called app permission, where a user has to allow the app to start automatically (Service). In your case the Service is not called, once its terminated from stack.
Go like this and allow your app to autostart:
Settings > permissions > Autostart
Code:
if (Build.BRAND.equalsIgnoreCase("xiaomi")) {
Intent intent = new Intent();
intent.setComponent(new ComponentName("com.miui.securitycenter", "com.miui.permcenter.autostart.AutoStartManagementActivity"));
startActivity(intent);
}
Use the above code to launch autostart activity.
Related
I am trying to generate APK from my source code and getting below errors.
F:\breeze-2019-3-14\app\build\intermediates\merged_manifests\debug\AndroidManifest.xml:88: error: unexpected element <action> found in <manifest><application><activity>.
F:\breeze-2019-3-14\app\build\intermediates\merged_manifests\debug\AndroidManifest.xml:90: error: unexpected element <category> found in <manifest><application><activity>.
My Manifest file is like below
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.zaravoipcall.breeze">
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission
android:name="com.zaravoipcall.breeze.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<permission android:name="com.ipsmarx.dialer.MsgDBProvider"
android:protectionLevel="signature" />
<uses-permission android:name="com.zaravoipcall.breeze.permission.C2D_MESSAGE" />
<uses-feature
android:name="android.hardware.sip.voip"
android:required="false" />
<uses-feature
android:name="android.hardware.wifi"
android:required="true" />
<uses-feature
android:name="android.hardware.microphone"
android:required="true" />
<uses-feature
android:name="android.hardware.telephony"
android:required="false" />
<uses-feature
android:name="android.hardware.screen.portrait"
android:required="false" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<application
android:name="com.ipsmarx.dialer.MyApplication"
android:allowBackup="true"
android:configChanges="keyboardHidden|orientation"
android:hardwareAccelerated="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:screenOrientation="portrait"
android:theme="#style/AppBaseTheme">
<activity
android:name="com.ipsmarx.newdesign.LoginActivity"
android:configChanges="keyboardHidden|orientation"
android:label="#string/app_display_name"
android:launchMode="singleTask"
android:screenOrientation="portrait">
<action android:name="com.google.android.gms.actions.SEARCH_ACTION" />
<category android:name="android.intent.category.DEFAULT" />
</activity>
<receiver
android:name="com.ipsmarx.newdesign.OutgoingCall"
android:enabled="false">
<intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
</intent-filter>
</receiver>
<activity
android:name="com.ipsmarx.newdesign.Splashscreen"
android:configChanges="keyboardHidden|orientation"
android:label="#string/app_display_name"
android:launchMode="singleTask"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.ipsmarx.newdesign.ModeSelectDialog"
android:allowTaskReparenting="false"
android:configChanges="orientation"
android:excludeFromRecents="true"
android:launchMode="singleTask" />
<activity
android:name="com.ipsmarx.dialer.ConnectedCall"
android:configChanges="keyboardHidden|orientation"
android:excludeFromRecents="true"
android:launchMode="singleTask"
android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden">
<intent-filter android:priority="1000">
<action android:name="android.bluetooth.headset.action.VENDOR_SPECIFIC_HEADSET_EVENT" />
<action android:name="android.intent.action.VOICE_COMMAND" />
<action android:name="android.intent.action.CALL_BUTTON" />
</intent-filter>
</activity>
<activity
android:name="com.ipsmarx.newdesign.Tabbar"
android:label="#string/login"
android:launchMode="singleTask"
android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity
android:name="com.ipsmarx.contactslist.ui.ContactDetailActivity"
android:label="Contact Details"
android:screenOrientation="portrait" />
<activity
android:name="com.ipsmarx.contactslist.ui.ComposeActivity"
android:label="Compose Invite"
android:screenOrientation="portrait" />
<receiver android:name="com.ipsmarx.dialer.Receiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</receiver>
<receiver
android:name="com.ipsmarx.dialer.WakeLockManager"
android:enabled="true">
<intent-filter>
<action android:name="com.ipsmarx.dialer.custom.intent.action.cpuwakelock" />
</intent-filter>
</receiver>
<receiver
android:name="com.ipsmarx.dialer.NotificationController"
android:enabled="true">
<intent-filter>
<action android:name="com.ipsmarx.dialer.custom.intent.action.REG_STATUS" />
</intent-filter>
<intent-filter>
<action android:name="com.ipsmarx.dialer.custom.intent.action.MISSED_CALL" />
</intent-filter>
<intent-filter>
<action android:name="com.ipsmarx.dialer.custom.intent.action.SHOW_CALLLOG" />
</intent-filter>
<intent-filter>
<action android:name="com.ipsmarx.dialer.custom.intent.action.SHOW_CHATTHREAD" />
</intent-filter>
<intent-filter>
<action android:name="com.ipsmarx.dialer.custom.intent.action.MSG_STATUS" />
</intent-filter>
</receiver>
<service
android:name="com.ipsmarx.dialer.SipService"
android:enabled="true" />
<service android:name="com.ipsmarx.dialer.ContactSyncService" />
<!--<provider-->
<!--android:name="com.ipsmarx.dialer.MsgDBProvider"-->
<!--android:authorities="#string/app_name"-->
<!--android:exported="false"-->
<!--android:permission="android.permission.CONFIGURE_SIP" />-->
<receiver
android:name="com.ipsmarx.pushnotification.GcmBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
<category android:name="com.ipsmarx.dialer" />
</intent-filter>
</receiver>
<service android:name="com.ipsmarx.pushnotification.GCMIntentService" />
<activity
android:name="com.ipsmarx.newdesign.SignUp"
android:label="#string/title_activity_sign_up"
android:screenOrientation="portrait" />
<activity
android:name="com.ipsmarx.newdesign.SignUpByPhone"
android:label="#string/title_activity_sign_up_by_phone"
android:screenOrientation="portrait" />
<activity
android:name="com.ipsmarx.newdesign.ForgotPassword"
android:label="#string/title_activity_forgot_password"
android:screenOrientation="portrait" />
<activity
android:name="com.ipsmarx.video.RTCActivity"
android:configChanges="orientation|screenSize"
android:excludeFromRecents="true"
android:label="#string/app_name"
android:launchMode="singleTask"
android:screenOrientation="fullUser"
android:windowSoftInputMode="stateHidden" />
<meta-data
android:name="io.fabric.ApiKey"
android:value="6b5afe577fa0e4476d354af38bcdc075eee398a6" />
<meta-data
android:name="com.google.android.gms.version"
android:value="#integer/google_play_services_version" />
<activity
android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode"
android:theme="#android:style/Theme.Translucent"
tools:replace="android:configChanges" />
<activity
android:name="com.google.android.gms.ads.purchase.InAppPurchaseActivity"
android:theme="#style/Theme.IAPTheme" />
</application>
</manifest>
I am using Android Studio 3.3.1 and Gradle 4.10.1
I am trying to figure it from last two hours and not getting idea whats wrong in my code. Let me know if someone can help me for solve the issue. Thanks
your Manifest.xml is corrupt, this:
<action android:name="com.google.android.gms.actions.SEARCH_ACTION" />
<category android:name="android.intent.category.DEFAULT" />
should be (android.intent.action.MAIN is optional):
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="com.google.android.gms.actions.SEARCH_ACTION" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
Change this portion to
<activity
android:name="com.ipsmarx.newdesign.LoginActivity"
android:configChanges="keyboardHidden|orientation"
android:label="#string/app_display_name"
android:launchMode="singleTask"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="com.google.android.gms.actions.SEARCH_ACTION" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
I am working on android application with parse.com. My Push notifications were working fine, but now suddenly in my project it stops working. I didn't change any thing in my project and on parse server. My Manifest file along with some code snippets are given below.
How can I trace the problem?
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.murgency"
android:versionCode="40"
android:versionName="1.8"
>
<uses-sdk android:minSdkVersion="16"
android:targetSdkVersion="20" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.SET_DEBUG_APP"/>
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission
android:name="com.murgency.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.murgency.permission.C2D_MESSAGE" />
<application
android:name="murgency.MUrgencyApplication"
android:allowBackup="true"
android:label="#string/app_name"
android:largeHeap="true"
android:icon="#drawable/icon"
android:theme="#style/AppTheme"
tools:replace="android:icon">
<service android:name="com.appsee.AppseeBackgroundUploader" />
<activity
android:name="murgency.activities.SplashScreen"
android:screenOrientation="portrait"
android:hardwareAccelerated="false"
android:theme="#style/AppTheme"
android:windowSoftInputMode="stateAlwaysHidden" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<data
android:host="open"
android:scheme="MUrgency" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
<receiver
android:name="services.BootReceiver"
android:enabled="true"
android:exported="false" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<service android:name="services.ContactService" />
<receiver android:name="receiver.gps.GPSStartReceiver" />
<service android:name="services.gps.GPSService" />
<service
android:name="services.GPSLoggerService"
android:enabled="true"
android:exported="true"
android:permission="android.permission.ACCESS_FINE_LOCATION" >
</service>
<receiver android:name="com.parse.ParseBroadcastReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
<!-- Custom receiver -->
<receiver
android:name="services.ParsePushReceiver"
android:exported="false" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.USER_PRESENT" />
<action android:name="com.murgency.UPDATE_STATUS" />
</intent-filter>
<intent-filter>
<action android:name="com.parse.push.intent.RECEIVE" />
<action android:name="com.parse.push.intent.OPEN" />
<action android:name="com.parse.push.intent.DELETE" />
</intent-filter>
</receiver>
<!-- GCM -->
<service
android:name="services.GcmIntentService"
android:enabled="true" />
<receiver
android:name="services.GcmBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.RECEIVE" >
<intent-filter android:priority="1" >
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<action android:name="com.murgency.UPDATE_STATUS" />
<category android:name="com.murgency" />
</intent-filter>
</receiver>
<receiver
android:name="com.parse.ParsePushBroadcastReceiver"
android:exported="false" >
<intent-filter>
<action android:name="com.parse.push.intent.RECEIVE" />
<action android:name="com.parse.push.intent.OPEN" />
<action android:name="com.parse.push.intent.DELETE" />
</intent-filter>
</receiver>
</application>
</manifest>
The Parse hosted service will be retired on January 28, 2017. So you have to migrate your app.
See the Migration Url
Announcement from Parse
This question already has answers here:
Install shows error in console: INSTALL FAILED CONFLICTING PROVIDER
(31 answers)
Closed 6 years ago.
I am getting "Installation failed with message INSTALL_FAILED_CONFLICTING_PROVIDER." while run the project in Android Studio.
How to resolve this?
My manifest.xml is:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.mmsapp" >
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.WRITE_SMS" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_MMS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.RECEIVE_MMS" />
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.WRITE_SMS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INSTALL_DRM" />
<uses-permission android:name="android.provider.Telephony.SMS_RECEIVED" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-feature
android:name="android.hardware.camera"
android:required="false"></uses-feature>
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<application
android:name=".Volley.AppController"
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme">
<activity
android:name=".ui.SplashScreenActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ui.tutorial.Demo1"
android:screenOrientation="portrait" />
<activity
android:name=".ui.tutorial.Demo2"
android:screenOrientation="portrait" />
<activity
android:name=".ui.tutorial.Demo3"
android:screenOrientation="portrait" />
<activity
android:name=".ui.tutorial.Demo5"
android:screenOrientation="portrait" />
<activity
android:name=".ui.tutorial.Demo4"
android:screenOrientation="portrait" />
<activity
android:name=".ui.Setup1"
android:screenOrientation="portrait"
android:theme="#android:style/Theme.NoTitleBar"
android:windowSoftInputMode="adjustResize" />
<activity
android:name=".ui.Setup2"
android:screenOrientation="portrait"
android:theme="#android:style/Theme.NoTitleBar" />
<activity
android:name=".ui.Setup3"
android:screenOrientation="portrait" />
<activity
android:name=".ui.Setup4"
android:screenOrientation="portrait" />
<activity
android:name=".ui.MessageListActivity"
android:theme="#style/AppTheme" />
<activity
android:name=".ui.MessagingActivity"
android:theme="#android:style/Theme.NoTitleBar" />
<activity
android:name=".ui.SettingsActivity"
android:screenOrientation="portrait"
android:theme="#android:style/Theme.NoTitleBar" />
<activity
android:name=".ui.StatisticsActivity"
android:screenOrientation="portrait"
android:theme="#android:style/Theme.NoTitleBar" />
<activity
android:name=".ui.LoginActivity"
android:screenOrientation="portrait"
android:theme="#android:style/Theme.NoTitleBar" />
<activity
android:name=".v2.ui.SignInActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.SignInActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.UpdatePasswordActivity"
android:screenOrientation="portrait"
android:theme="#android:style/Theme.NoTitleBar" />
<receiver android:name=".control.SmsReceiver">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
<activity
android:name=".mms.MainActivity"
android:label="#string/app_name">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<action android:name="android.intent.action.SENDTO" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="sms" />
<data android:scheme="smsto" />
<data android:scheme="mms" />
<data android:scheme="mmsto" />
</intent-filter>
<intent-filter>
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
<data android:mimeType="image/*" />
<action android:name="android.intent.action.SEND" />
</intent-filter>
</activity>
<activity android:name="eu.janmuller.android.simplecropimage.CropImage" />
<service android:name="com.android.mms.transaction.TransactionService" />
<receiver
android:name=".mms.SmsReceiver"
android:permission="android.permission.BROADCAST_SMS">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_DELIVER" />
</intent-filter>
</receiver>
<receiver
android:name=".mms.MmsReceiver"
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>
<service
android:name=".mms.HeadlessSmsSendService"
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>
<activity android:name=".mms.PermissionActivity" />
</application>
</manifest>
The fix is to make sure that defaultConfig.applicationId is defined in android section of the build.gradle file for each project using your library
android {
defaultConfig.applicationId = "com.company.appname"(Your application package name)
}
And other thing please uninstall Settings --> Application --> --> Uninstall
My code is as below
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.aaa"
android:versionCode="2027"
android:versionName="5.1.5" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="18" />
<uses-permission
android:name="android.permission.GET_TASKS"
android:protectionLevel="normal" />
<uses-permission android:name="android.permission.VIBRATE" />
<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.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_OWNER_DATA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission
android:name="com.aaa.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.aaa.permission.C2D_MESSAGE" />
<application
android:name="com.aaa.application.SalesEnablementApplication"
android:allowBackup="true"
android:icon="#drawable/ic_app_icon_new"
android:label="#string/app_name"
tools:replace="android:label"
android:largeHeap="true"
android:theme="#style/AppTheme" >
<meta-data
android:name="com.parse.APPLICATION_ID"
android:value="#string/application_id_stage" />
<meta-data
android:name="com.parse.CLIENT_KEY"
android:value="#string/client_key_stage" />
<receiver
android:name="com.xxx.util.NetworkStateReceiver"
android:enabled="false"
android:label="NetworkStateReceiver" >
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</receiver>
.
.
.
<receiver android:name="com.aaa.pushNotification.PushBroadcastReceiver" >
<intent-filter>
<action android:name="com.aaa.Notification_ACTION" />
</intent-filter>
<!-- <category android:name="android.intent.category.DEFAULT" /> -->
</receiver>
<service android:name="com.parse.PushService" />
<receiver android:name="com.parse.ParseBroadcastReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
<receiver
android:name="com.aaa.receiver.CustomParsePushBroadcastReceiver"
android:exported="false" >
<intent-filter>
<action android:name="com.parse.push.intent.RECEIVE" />
<action android:name="com.parse.push.intent.DELETE" />
<action android:name="com.parse.push.intent.OPEN" />
</intent-filter>
</receiver>
<receiver
android:name="com.parse.GcmBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
<!-- IMPORTANT: Change "com.parse.starter" to match your app's package name. -->
<category android:name="com.aaa" />
</intent-filter>
</receiver>
<receiver
android:name="com.aaa.receiver.MyReceiver"
android:exported="false" >
<intent-filter>
<action android:name="com.parse.starter.UPDATE_STATUS" />
<action android:name="com.aaa.UPDATE_STATUS" />
<!--
<action android:name="com.push.intent.RECEIVE" />
<action android:name="com.push.intent.DELETE" />
<action android:name="com.push.intent.OPEN" />
-->
</intent-filter>
</receiver>
<!--
<receiver
android:name="com.aaa.receiver.MyReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="com.aaa" />
</intent-filter>
</receiver>
-->
</application>
</manifest>
My Application Class:
public void onCreate() {
super.onCreate();
// Enable Local Datastore.
Parse.enableLocalDatastore(this);
// Init Parse App after checking the current environment
Parse.initialize(this);
/*if(Environment.ENV.equalsIgnoreCase(Environment.ENV_STAGE)){
Parse.initialize(this, getResources().getString(R.string.application_id_stage), getResources().getString(R.string.client_key_stage));
}else{
Parse.initialize(this, getResources().getString(R.string.application_id_prod), getResources().getString(R.string.client_key_prod));
}*/
ParseInstallation.getCurrentInstallation().saveInBackground();
ParseACL defaultACL = new ParseACL();
defaultACL.setPublicReadAccess(true);
defaultACL.setPublicWriteAccess(true);
ParseACL.setDefaultACL(defaultACL, true);
// used to store temp objects
dataStore = new DataStore();
eventCaptureHandler = new EventCaptureHandler(this);
}
I am using parse SDK version 1.13.0.
Testing on Android 6.0.1 (Sony Xperia Z2).
I try to send push message from the Parse Dashboard. I do not receive the notification sent. I noticed that DeviceType and pushType, in the Installation table, is set to (Undefined).
I am new for parse.com and trying push notification. so i refer this tutorial
http://www.androidhive.info/2015/06/android-push-notifications-using-parse-com/
i changed the application ID and client key also. i am using push notification as a test purpose. but Parse.com showing "Can't find any registered devices yet..." though i installed it in device.
I did same as the tutorial.
My Manifest file
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.samplepushnotificationparse">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission
android:name="com.example.samplepushnotificationparse.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.example.samplepushnotificationparse.permission.C2D_MESSAGE" />
<application
android:name=".MyApplication"
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:supportsRtl="true"
android:theme="#style/AppTheme">
<activity android:name=".LoginActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".MainActivity" />
<service android:name="com.parse.PushService" />
<receiver
android:name=".CustomPushReceiver"
android:exported="false">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.USER_PRESENT" />
<action android:name="com.parse.push.intent.RECEIVE" />
<action android:name="com.parse.push.intent.DELETE" />
<action android:name="com.parse.push.intent.OPEN" />
</intent-filter>
</receiver>
<receiver
android:name="com.parse.GcmBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.google.android.c2dm.permission.RECEIVE" />
<action android:name="com.google.android.c2dm.permission.REGISTRATION" />
<category android:name="com.example.samplepushnotificationparse" />
</intent-filter>
</receiver>
</application>