0

Я использую parse sdk для Android и тестирую свое приложение на Android lollipop 5.0. Я могу получать push-уведомления, когда приложение работает или в фоновом режиме, но когда я его убиваю или закрываю, я не могу. Вот мой код manifest.xmlНевозможно получить оповещения о синтаксическом разборе, когда приложение убито Android

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.ver.verapp" > 

    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 
    <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:protectionLevel="signature" 
     android:name="com.ver.verapp.permission.C2D_MESSAGE" /> 
    <uses-permission android:name="com.ver.verapp.permission.C2D_MESSAGE" /> 


    <application 
     android:name="com.ver.verapp.MainApplication" 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 


     <meta-data 
      android:name="io.fabric.ApiKey" 
      android:value="Z8Uof8cKL0FTs118iLUOOsjY4" /> 
     <meta-data 
      android:name="com.facebook.sdk.ApplicationId" 
      android:value="@string/facebook_app_id" /> 

     <activity android:name=".MainActivity" > 
     </activity> 
     <activity 
      android:name="com.facebook.FacebookActivity" 
      android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" 
      android:label="@string/app_name" 
      android:theme="@android:style/Theme.Translucent.NoTitleBar" /> 
     <activity 
      android:name=".Login" 
      android:screenOrientation="portrait" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <meta-data android:name="com.parse.push.notification_icon" android:resource="@drawable/verapp_push"/> 

     <service android:name="com.parse.PushService" /> 

     <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" /> 
       <category android:name="com.ver.verapp" /> 
      </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.DELETE" /> 
       <action android:name="com.parse.push.intent.OPEN" /> 
      </intent-filter> 
     </receiver> 


    </application> 

</manifest> 

Вот мой код пользовательских приложений:

public class MainApplication extends Application { 
private static String TAG_SESSIONTOKEN ="sessionToken"; 
@Override 
public void onCreate() { 
    super.onCreate(); 
    Parse.initialize(this, "XXXX", "XXXX"); 
    ParseInstallation.getCurrentInstallation().saveInBackground(); 
    String Token = (String) ParseInstallation.getCurrentInstallation().get("deviceToken"); 
    SharedPreferences prefs = getSharedPreferences("verapp", 0); 
    if(Token!=null) 
    { 
     SharedPreferences.Editor editor = prefs.edit(); 
     editor.putString("tokenParse", Token); 
     editor.commit(); 
    } 
    else 
    { 
     Token=""; 
    } 
} 



@Override 
protected void attachBaseContext(Context base) { 
    super.attachBaseContext(base); 
    MultiDex.install(this); 

} 

}

ответ

0

Я понял это, мой Asus Zenfone 2 был предварительно установлено приложение под названием Start Manger это мешало моему приложению просыпаться в одиночку, я должен был включить его, и теперь он работает.

0

Была такая же проблема. Здесь:

** Создать новый класс, называемый Служба. Там, поставить это в OnCreate: **

Parse.initialize(this, "XXXX", "XXXX"); 
    ParseInstallation.getCurrentInstallation().saveInBackground(); 

Затем перейдите в ваш манифест и добавьте:

<application 
name:"pacakge.name.to.ServiceClass" 
... 
> 
... 
Смежные вопросы