Pytanie Facebook App Invite, Zaproś przyjaciół


Zmieniłem na Facebook 4.0, aby zaimplementować AppInviteDialog dla Androida. podążałem to odniesienie.

Pojawi się okno dialogowe, mogę wybrać znajomych, zaprosić ich, dostaję onSuccess() zadzwoń, ale moi przyjaciele nie dostają zaproszenia.

Użyłem poniższego URL-a applink: https://fb.me/****412097*****

Brak podgląduImageURL, mimo że zobaczyłem obraz mojej aplikacji w oknie dialogowym.

Kod:

//Inside onCreate -

        callbackManager = CallbackManager.Factory.create();

        mInvititeDialog = new AppInviteDialog(this);
        mInvititeDialog.registerCallback(callbackManager,
                new FacebookCallback<AppInviteDialog.Result>() {

                    @Override
                    public void onSuccess(Result result) {
                        NetworkController.showCustomToast(
                                InviteFriendsActivity.this,
                                "Invitation Sent Successfully!");
                        finish();
                    }

                    @Override
                    public void onCancel() {
                        Log.d("Result", "Cancelled");
                        NetworkController.showCustomToast(
                                InviteFriendsActivity.this, "Cancelled");
                        finish();
                    }

                    @Override
                    public void onError(FacebookException exception) {
                        Log.d("Result", "Error " + exception.getMessage());
                        NetworkController.showCustomToast(
                                InviteFriendsActivity.this,
                                "Error while inviting friends");
                        finish();
                    }
                });


    if (AppInviteDialog.canShow()) {
            AppInviteContent content = new AppInviteContent.Builder()
                            .setApplinkUrl(appLinkUrl).build();

            AppInviteDialog.show(InviteFriendsActivity.this, content);

    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // TODO Auto-generated method stub
        super.onActivityResult(requestCode, resultCode, data);
        callbackManager.onActivityResult(requestCode, resultCode, data);

    }

Brak pomocy poniżej pod podobnymi linkami (nawet jeśli pochodzą z ios)

Kod zaproszenia fb nie działa

https://stackoverflow.com/questions/27547826/facebook-app-invites-issue

Facebook App Invite nie został odebrany


21
2018-05-20 09:24


pochodzenie


Czy jest to obowiązkowe? Facebook app robić App Invite praca? - activesince93
Jak zdobyć appLinkUrl Nie mogę go zdobyć? - Praneeth


Odpowiedzi:


Ok, okazuje się, że wszystko działa dobrze. Mój błąd polegał na założeniu, że aplikacja nie jest zainstalowana, a brak autoryzacji aplikacji powinien generować powiadomienie push.

Po utworzeniu nowego użytkownika testowego, za pomocą urządzenia, na którym aplikacja nie była zainstalowana, a aplikacja NIGDY nie została autoryzowana przez użytkownika.

Tak więc kluczem jest to, że żadne powiadomienie push nie zostanie wygenerowane, jeśli aplikacja jest zainstalowana na urządzeniu docelowym, nawet jeśli użytkownik nie autoryzował aplikacji wcześniej. Wydaje się również, że jeśli użytkownik wcześniej autoryzował aplikację, nawet jeśli został usunięty w pewnym momencie, nie wygeneruje również powiadomienia.

Jeśli chcesz to przetestować, stwórz zupełnie nowego użytkownika testowego i zaloguj się w aplikacji Facebook na testowanej platformie i upewnij się, że aplikacja nie jest zainstalowana na urządzeniu.

Myślę, że mimo zainstalowanej aplikacji nadal powinien generować powiadomienie, ponieważ wielu użytkowników może używać tego samego urządzenia, ale tak właśnie jest teraz.

Zostawię to tutaj na wypadek, gdyby ktoś miał podobny problem w przyszłości.

Żyj długo i szczęśliwie!

Źródło

To rzeczywiście działa dla mnie, ale nie jestem pewien, czy obejmuje wszystkie scenariusze i jest idealnym rozwiązaniem. Publikowanie tutaj dla innych użytkowników i ewentualne sugestie.


17
2018-05-21 12:49



Problem podczas zaproszenia znajomego z Facebooka. Czy możesz odpowiedzieć na to pytanie: stackoverflow.com/questions/38677049/... - Abhishek Tandon


Używam następującego kodu i działa dobrze ... ale po zaproszeniu znajomych (jeśli udostępniłeś aplikację na Androida, to zapraszam do sprawdzenia jego aplikacji mobilnej). Zaproszenie nie jest widoczne w przeglądarkach

private CallbackManager sCallbackManager;

public void openDialogInvite(final Activity activity) {
            String AppURl = "https://fb.me/421570...5709";  //Generated from //fb developers

        String previewImageUrl = "http://someurl/13_dp.png";

        sCallbackManager = CallbackManager.Factory.create();

        if (AppInviteDialog.canShow()) {
            AppInviteContent content = new AppInviteContent.Builder()
                    .setApplinkUrl(AppURl).setPreviewImageUrl(previewImageUrl)
                    .build();

            AppInviteDialog appInviteDialog = new AppInviteDialog(activity);
            appInviteDialog.registerCallback(sCallbackManager,
                    new FacebookCallback<AppInviteDialog.Result>() {
                        @Override
                        public void onSuccess(AppInviteDialog.Result result) {
                            Log.d("Invitation", "Invitation Sent Successfully");
                            finish();
                        }

                        @Override
                        public void onCancel() {
                        }

                        @Override
                        public void onError(FacebookException e) {
                            Log.d("Invitation", "Error Occured");
                        }
                    });

            appInviteDialog.show(content);
        }

    }

6
2018-05-21 12:35



jeśli masz jakieś problemy, zapytaj mnie - asad.qazi
Dzięki @ asad.qazi +1. Znalazłem także przypadki narożne, w których to nie działa. Dodałem go poniżej w celach informacyjnych. - Atul O Holic
Zaproszenia można uzyskać na koncie FB na wszystkich formularzach, dostarczając ustawienia aplikacji dla stron internetowych i FB Canvas oraz ios z ustawieniami Androida. - abrar ul haq
Okno dialogowe Zaproś znajomego przychodzi, ale w języku hindi. Jak zdobyć dane w języku angielskim ??? - AmeeJoshi
Witaj! Mogę wysłać zaproszenie do aplikacji, ale jestem w stanie uzyskać odpowiedź w onSuccess lub onError. Proszę pomóż! - Vivek Kumar


Może to pomóc osobie mającej ten sam problem  Użyj tego kodu

private void InviteFbFriends()
{
    String appLinkUrl, previewImageUrl;
    appLinkUrl = "app url(create it from facebook)"; //your applink url
    previewImageUrl = "image url";//your image url 
    if (AppInviteDialog.canShow()) {
        AppInviteContent content = new AppInviteContent.Builder()
                .setApplinkUrl(appLinkUrl)
                .setPreviewImageUrl(previewImageUrl)
                .build();
        AppInviteDialog.show(this, content);
    }
}

Uwaga. MOŻESZ WIDZIĆ WYGLĄD TYLKO W URZĄDZENIACH


3
2018-06-18 07:57



"TY MOŻESZ ZOBACZYĆ WYWAGĘ TYLKO W URZĄDZENIACH" +1 Dzięki. - hungtdo


  1. Integruję też apki aplikacji app w aplikacji na iOS. Mam też ten sam problem, gdy po wprowadzeniu zmian w ustawieniach aplikacji. Otrzymałem powiadomienia z każdej strony.
  2. Jak powiedział Mr.Asad w swojej odpowiedzi, nie wyświetla się w przeglądarkach, które mówi źle. W rzeczywistości, aby uzyskać zaproszenie ze wszystkich stron, musimy dokonać ustawienia dla aplikacji dla wszystkich stron w następujący sposób. Z konta programisty wybierz swoją aplikację i podaj informacje dla wszystkich platform, aby otrzymywać zaproszenia na wszystkich stronach ios, Android, Facebook i w Internecie. Jeśli dodamy ustawienie tylko dla jednej platformy, np. Dostarczymy informacji, tylko powiadomienie z Androidem będzie wyświetlane na urządzeniach z Androidem, a nie na innych matrycach.

1
2018-05-22 11:54





W moim przypadku nie mogłem otrzymać zaproszenia i zobaczyć je w aplikacji FB, ponieważ aplikacja FB była w trybie programowania (nie była dostępna na żywo).

enter image description here


0
2017-10-05 16:35