无法解析使用Parse推送通知的方法

时间:2014-11-06 23:59:38

标签: android parsing notifications push

按照教程https://parse.com/tutorials/android-push-notifications尝试添加解析推送通知。

当我添加

ParsePush.subscribeInBackground("", new SaveCallback() {
@Override
public void done(ParseException e) {
if (e != null) {
  Log.d("com.parse.push", "successfully subscribed to the broadcast channel.");
} else {
  Log.e("com.parse.push", "failed to subscribe for push", e);
  }
 }
});

我得到无法解析方法'subscribeInBackground'(java.lang.String,com.parse.Savecallback)'

请注意,我的应用有Webview和Appflood SDK

这是我的MainActivity.java

    package qax.esouqbahrain;

import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.Window;
import android.view.WindowManager;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;

import com.parse.Parse;
import com.parse.ParseException;
import com.parse.ParsePush;
import com.parse.SaveCallback;

import com.appflood.AppFlood;
import com.appflood.AppFlood.AFEventDelegate;
import com.appflood.AppFlood.AFRequestDelegate;



public class MainActivity extends Activity  {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);

        setContentView(R.layout.activity_main);

        ParsePush.subscribeInBackground("", new SaveCallback() {
            @Override
            public void done(ParseException e) {
                if (e != null) {
                    Log.d("com.parse.push", "successfully subscribed to the broadcast channel.");
                } else {
                    Log.e("com.parse.push", "failed to subscribe for push", e);
                }
            }
        });

        Parse.initialize(this, "APPID", "KEY");





        AppFlood.initialize(this, "cGGxtQU5ULmgDAHO", "MpXlC7mb57d1L54590314", AppFlood.AD_ALL,Color.rgb(224,71,35), Color.rgb(214,214,214),Color.rgb(225,225,225));



        //Point to the content view defined in XML
        setContentView(R.layout.activity_main);
        //Configure the webview setup in the xml layout
        WebView myWebView = (WebView) findViewById(R.id.webview);
        WebSettings webSettings = myWebView.getSettings();
        //Yes, we want javascript, pls.
        webSettings.setJavaScriptEnabled(true);
        //Make sure links in the webview is handled by the webview and not sent to a full browser
        myWebView.setWebViewClient(new WebViewClient());
        //And let the fun begin
        myWebView.loadUrl("http://esouqbh.com");



    }



    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

1 个答案:

答案 0 :(得分:3)

好的修正

// Initialize the Parse SDK.
Parse.initialize(this, "", "");

// Specify an Activity to handle all pushes by default.
PushService.setDefaultPushCallback(this, MainActivity.class);

解决了我的问题,现在它工作得很好。该教程令人困惑,所以我继续使用他们的github并使用他们的MainActivity.java文件