2016-01-13 5 views
2

Я пытаюсь внедрить приложение google в моем приложении, которое я создаю с помощью реакции native. Тем не менее, я должен в основном изменить весь файл MainActivity.java.React Native - MainActivity.java

Я буду изменение этого

public class MainActivity extends ReactActivity { 

в

public class MainActivity extends AppCompatActivity implements 
    GoogleApiClient.OnConnectionFailedListener, 
    View.OnClickListener { 

Это меняет много вещей, как это больше не распространяющие ReactActivity, то теперь проходящими AppCompatActivity.

Мой вопрос: возможно ли изменить то, что MainActivity распространяется? Не требуется ли ReactActivity? Кроме того, у ReactActivity есть методы, которые AppCompatActivity не такие, как protected List<ReactPackage> getPackages() {.

Кстати, где я получаю AppCompatActivity является https://github.com/googlesamples/google-services/blob/master/android/signin/app/src/main/java/com/google/samples/quickstart/signin/SignInActivity.java которого GitHub репо Google для Google Входа.

Другой вопрос, который у меня был, в настоящее время, я должен изменить MainActivity.java, чтобы заставить Google Sign In работать. Когда я пытаюсь реализовать что-то еще, скажем, захват видео, я создаю новый файл MainActivity.java, такой как VideoActivity.java, или я делаю все изменения для всего в одном файле MainActivity.java.

Благодаря

ответ

1

AFAIK, ReactActivity продолжается (android.support.v4.app.) FragmentActivity и вы можете передать его в enableAutoManage. Не должно быть проблем с его использованием в качестве базового класса.

Для входа в api не требуется никакого кода пользовательского интерфейса, но для сохранения вашего кода шаблона рекомендуется использовать его вместе с GoogleApiClient.Builder.autoManage, для которого требуется функция FragmentActivity. Даже для приложений, не имеющих функции FragmentActivity, они все равно могут использовать Sign-In api без enableAutoManage (тогда они должны вручную вызвать connect()/disconnect() своего GoogleApiClient, как указано здесь: https://developers.google.com/android/guides/api-client)

Смежные вопросы