Ошибка NullPointerException при авторизации через twitter

298
29 апреля 2017, 21:34

Здравствуйте. Реализовываю авторизацию в android приложении через twitter, большая часть кода досталась от предыдущего разработчика.

private final TwitterAuthClient twitterAuthClient== new TwitterAuthClient();;
private final AtomicReference<SocialLoginResult> reference= new AtomicReference<>();
private final TwitterAuthCallback twitterAuthCallback = new TwitterAuthCallback();
   @Override
    public void startLogin(@NonNull Object startActivityForResultObject) {
        if (startActivityForResultObject instanceof Fragment || startActivityForResultObject instanceof Activity) {
            reference.set(null);
            if (startActivityForResultObject instanceof Fragment) {
                Fragment fragment = (Fragment) startActivityForResultObject;
                twitterAuthClient.authorize(new Activity() {
                    @Override
                    public void startActivityForResult(@RequiresPermission Intent intent, int requestCode) {
                        fragment.startActivityForResult(intent, requestCode);
                    }

                    @Override
                    public PackageManager getPackageManager() {
                        return fragment.getContext().getPackageManager();
                    }
                }, twitterAuthCallback);
            } else {
                twitterAuthClient.authorize((Activity) startActivityForResultObject, twitterAuthCallback);
            }
        } else {
            throw new IllegalArgumentException("Can't startActivityForResult on this object " + startActivityForResultObject);
        }
    }

При выполнении startLogin в строке return fragment.getContext().getPackageManager(); вываливается ошибка:

"java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.Context.getPackageName()' on a null object reference"

Прошу знающих людей подсказать как устранить данную ошибку и/или скинуть ссылку на статью об авторизации в android приложении через twitter.

READ ALSO
Декодер видео андроид

Декодер видео андроид

ЗдравствуйтеВо многих программах в настройках есть:

291
open failed: EACCES (Permission denied)

open failed: EACCES (Permission denied)

Пытаюсь загрузить файл в папку на внутреннем накопителе по пути /storage/sdcard0/novsu/db/ но выдает сообщение /storage/sdcard0/

356
Как реализовать физику пули

Как реализовать физику пули

Как сделать так чтобы снаряд, который вылетел из ствола пушки, пролетел несколько метров и упал на землю

230