Note that there are some explanatory texts on larger screens.

plurals
  1. POFailed to load map. Error contacting Google servers. This is probably an authentication issue
    primarykey
    data
    text
    <p>I search all days and I can't find the answer...</p> <p>everything is ready but google map still can't show on fragment with tab</p> <p>I check that I already turn on google map android v2 and right API_KEY</p> <p>I have no idea what happened!</p> <p><a href="https://i.stack.imgur.com/7gIAz.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/7gIAz.png" alt="img"></a></p> <p>MainActivity.java:</p> <pre><code>public class MainActivity extends FragmentActivity implements ActionBar.TabListener { SectionsPagerAdapter mSectionsPagerAdapter; ViewPager mViewPager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); String titles[] = { this.getString(R.string.title_around), this.getString(R.string.title_map), this.getString(R.string.title_favorite), this.getString(R.string.title_achievement), }; final ActionBar actionBar = getActionBar(); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); mSectionsPagerAdapter = new SectionsPagerAdapter( getSupportFragmentManager()); mViewPager = (ViewPager) findViewById(R.id.pager); mViewPager.setAdapter(mSectionsPagerAdapter); mViewPager .setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() { @Override public void onPageSelected(int position) { actionBar.setSelectedNavigationItem(position); } }); for (int i = 0; i &lt; titles.length; i++) { actionBar.addTab(actionBar.newTab().setText(titles[i]) .setTabListener(this)); } } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public void onTabSelected(Tab tab, FragmentTransaction fragmentTransaction) { mViewPager.setCurrentItem(tab.getPosition()); } @Override public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) { } @Override public void onTabReselected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) { } public class SectionsPagerAdapter extends FragmentPagerAdapter { public SectionsPagerAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { // TODO 在這邊決定哪個位置要給什麼 View(Fragment) Fragment fragment = null; // TODO 建議先在之前就初始化好 4 個 Fragment switch (position) { case 0: fragment = new AroundFragment(); break; case 1: fragment = new MapsFragment(); break; case 2: fragment = new FavoriteFragment(); break; case 3: fragment = new AchievementFragment(); break; default: break; } return fragment; } @Override public int getCount() { return 4; } @Override public CharSequence getPageTitle(int position) { // TODO 在這邊決定每一個 View 的 title switch (position) { case 0: return getString(R.string.title_around); case 1: return getString(R.string.title_map); case 2: return getString(R.string.title_favorite); case 3: return getString(R.string.title_achievement); } return null; } } } </code></pre> <p>MapsFragment.java:</p> <pre><code>public class MapsFragment extends Fragment{ static final LatLng NKUT = new LatLng(23.979548, 120.696745); private GoogleMap map; SupportMapFragment mMapFragment; public MapsFragment() { } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.map_fragment,container, false); map = ((SupportMapFragment)getFragmentManager().findFragmentById(R.id.map)).getMap(); mMapFragment = SupportMapFragment.newInstance(); FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction(); fragmentTransaction.add(R.id.map,mMapFragment); fragmentTransaction.commit(); return rootView; } } </code></pre> <p>Map_fragment.xml</p> <pre><code>&lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" &gt; &lt;fragment android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" class="com.google.android.gms.maps.SupportMapFragment" /&gt; &lt;/RelativeLayout&gt; </code></pre> <p>Manifest.xml:</p> <pre><code>&lt;!-- Google Map --&gt; &lt;permission android:name="com.jertt.yummymap.permission.MAPS_RECEIVE" android:protectionLevel="signature"/&gt; &lt;uses-permission android:name="com.jertt.yummymap.permission.MAPS_RECEIVE"/&gt; &lt;uses-permission android:name="android.permission.INTERNET"/&gt; &lt;uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/&gt; &lt;uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/&gt; &lt;uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/&gt; &lt;!-- The following two permissions are not required to use Google Maps Android API v2, but are recommended. --&gt; &lt;uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/&gt; &lt;uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/&gt; &lt;!-- end --&gt; &lt;!-- Google Map API Key --&gt; &lt;meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="key" /&gt; &lt;!-- end --&gt; </code></pre> <p>Solution:</p> <p>I found the solution!!!</p> <p>If you use private keystore to apply API_KEY. You cannot upload and install application with eclipse. </p> <p>You need to upload .apk file to your device by yourself and install it!</p> <p>Thanks Tarsem and srikanth gr help!!</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload