GVKun编程网logo

谷歌跳舞(GoogleDance)(谷歌的舞蹈)

23

针对谷歌跳舞和GoogleDance这两个问题,本篇文章进行了详细的解答,同时本文还将给你拓展2013谷歌开发者节(GoogleDevFest)北京站、android–使用GoogleFitapi时谷

针对谷歌跳舞GoogleDance这两个问题,本篇文章进行了详细的解答,同时本文还将给你拓展2013 谷歌开发者节(Google DevFest)北京站、android – 使用Google Fit api时谷歌Oauth 2.0 RESULT_CANCELED、android – 无法解析目标’Google Inc.:Google API:16′、com.google.android.gms.maps.GoogleMap.CancelableCallback的实例源码等相关知识,希望可以帮助到你。

本文目录一览:

谷歌跳舞(GoogleDance)(谷歌的舞蹈)

谷歌跳舞(GoogleDance)(谷歌的舞蹈)

谷歌跳舞这个名词一般用于描绘谷歌查找引擎对查找成果进行更新、重组的进程,谷歌一般每个月对其查找数据库进行一次更新,新的网页被参加,无效网页被删去,对录入网站进行全面深度检索,也可能在这期间调整算法。

  在“跳舞时期”(三到五天内),谷歌的查找成果会有大幅度的波动,简直每一分钟都会有改变,这一更新进程可以很容易地经过查找成果的显着改变来辨认,“跳舞”一般继续几天时刻,跳舞完毕后,Google查找成果和网站外部链接数量趋于稳定,直至下一个周期的到来。

2013 谷歌开发者节(Google DevFest)北京站

2013 谷歌开发者节(Google DevFest)北京站

谷歌开发者节(Google DevFest) https://developers.google.com/events/devfest/ 是 全球各地 Google 技术社区组织的本地大型开发者活动,包含多种产品和技术的讲座以及 Code Lab 等活动形式。今年国内有10余个 GDG 社区组织了 DevFest 活动,包括北京、上海、珠海、厦门、西安等。

经过一个多月的准备,北京的 DevFest 将于10月26日举行(全天)。大会官网是 http://devfest.bjgdg.org/ 。

北京 DevFest 共有 10 场演讲内容,内容涉及 Web & HTML5、Chrome、Android、Google云平台技术,还有 WebRTC、Web Component & Polymer、Dart 等内容。讲师有来自 Google 的工程师、国内架构师和优秀开发者。精彩不容错过!

android – 使用Google Fit api时谷歌Oauth 2.0 RESULT_CANCELED

android – 使用Google Fit api时谷歌Oauth 2.0 RESULT_CANCELED

我想在我的 Android应用程序中使用google fit api.我按照 this指南,使用我的jdk 1.8 bin文件夹中的keytool.exe创建了SHA-1证书.我现在已经创建了Oauth Client ID .

在我的应用中,我在这里得到RESULT_CANCELED:

@Override
protected void onActivityResult(int requestCode,int resultCode,Intent data) {
    super.onActivityResult(requestCode,resultCode,data);
    if( requestCode == REQUEST_OAUTH ) {
        authInProgress = false;
        if( resultCode == RESULT_OK ) {
            if( !mClient.isConnecting() && !mClient.isConnected() ) {
                mClient.connect();
            }
        } else if( resultCode == RESULT_CANCELED ) {/// HERE
            Toast.makeText(MainActivity.this,"RESULT_CANCELED",Toast.LENGTH_SHORT).show();
            Log.e("GoogleFit","RESULT_CANCELED");
            Log.e("GoogleFit",data.getExtras().toString());
        }
    }else if(requestCode == CALL_END){
        if (resultCode == Activity.RESULT_OK){
            //pass
        }else{

        }
    } else {
        Log.e("GoogleFit","requestCode NOT request_oauth");
    }
}

试着找出过去两天的问题.我在android studio中添加了正确的播放服务库:compile’c​​om.google.android.gms:play-services-fitness:8.4.0′

建立客户:

private void buildfitnessClient() {

    if (mClient == null && checkPermissions()) {
        Log.i(TAG,"Building fitness Client");
        mClient = new Googleapiclient.Builder(this)
                .addApi(fitness.SENSORS_API)
                .addScope(new Scope(Scopes.fitness_ACTIVITY_READ_WRITE))
                .addConnectionCallbacks(this)
                .addOnConnectionFailedListener(this)
                .build();
        mClient.connect();
    }
}

回调:

/**
 * GOOGLE FIT METHODS
 */
@Override
public void onConnected(@Nullable Bundle bundle) {
    DataSourcesRequest dataSourceRequest = new DataSourcesRequest.Builder()
            .setDataTypes( DataType.TYPE_STEP_COUNT_CUMULATIVE )
            .setDataSourceTypes( DataSource.TYPE_RAW )
            .build();

    ResultCallback<DataSourcesResult> dataSourcesResultCallback = new ResultCallback<DataSourcesResult>() {
        @Override
        public void onResult(DataSourcesResult dataSourcesResult) {
            for( DataSource dataSource : dataSourcesResult.getDataSources() ) {
                if( DataType.TYPE_STEP_COUNT_CUMULATIVE.equals( dataSource.getDataType() ) ) {
                    registerfitnessDataListener(dataSource,DataType.TYPE_STEP_COUNT_CUMULATIVE);
                }
            }
        }
    };

    fitness.SensorsApi.findDataSources(mClient,dataSourceRequest)
            .setResultCallback(dataSourcesResultCallback);
}
@Override
public void onConnectionSuspended(int i) {

}
@Override
public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
    if( !authInProgress ) {
        try {
            authInProgress = true;
            connectionResult.startResolutionForResult( MainActivity.this,REQUEST_OAUTH );
        } catch(IntentSender.SendIntentException e ) {

        }
    } else {
        Log.e( "GoogleFit","authInProgress" );
    }
}
@Override
public void onDataPoint(DataPoint dataPoint) {
    for( final Field field : dataPoint.getDataType().getFields() ) {
        final Value value = dataPoint.getValue( field );
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                Toast.makeText(getApplicationContext(),"Field: " + field.getName() + " Value: " + value,Toast.LENGTH_SHORT).show();
                HealthRecordFragment.mStepsWalking.setText(value.toString());
            }
        });
    }
}

在Gradle中:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsversion "23.0.1"

    defaultConfig {
        applicationId "com.xxxx.xxxx"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    signingConfigs {
        release {
            storeFile file("C:\\Users\\xxxxx\\AndroidStudioProjects\\HBEAT2\\app\\hbeat_android")
            storePassword "password"
            keyAlias "hbeat_android"
            keyPassword "password"
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'),'proguard-rules.pro'
        }
    }
}

dependencies {
    compile filetree(dir: 'libs',include: ['*.jar'])
    compile 'com.google.android.gms:play-services-fitness:8.4.0'
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile "com.android.support:design:23.2.1"
    compile 'com.github.rahatarmanahmed:circularprogressview:2.4.0'
    compile 'de.timroes.android:EnhancedListView:0.3.0'
}

解决方法

我刚才遇到过这个问题.花了几个小时才弄清楚,所以我想指出那些犯同样错误的人.

我的Google Api客户端无法仅在生产环境中连接,在开发环境中一切正常.

这是因为我的应用程序设置为使用“App Signing”.这样,如果您使用生产密钥库的SHA1(或图片中的上载证书的SHA1)创建了Oauth客户端ID,则不会使用它,因为谷歌将删除此证书并更改为“应用程序签名”证书

因此,我们需要做的就是修复问题只需使用这个新的SHA1创建一个新的OAuth客户端ID,如下所示:

这个问题很容易遇到,因为大多数教程都会告诉您找到您的Production SHA1并在API控制台中使用它.但是,除非您使用“应用程序签名”,否则它将不再起作用.

android – 无法解析目标’Google Inc.:Google API:16′

android – 无法解析目标’Google Inc.:Google API:16′

当我从互联网上添加另一个项目时遇到这个问题.我想它要求我使用另一个版本的目标 android.但我想我的应用程序将在 Android 2.2中工作.

但它不需要API-8,它需要API-16,我不知道该怎么做.

解决方法

修改AndroidManifest.xml文件,以便其中的任何版本都是Android 2.2.还可以通过在eclipse中右键单击项目来更改所使用的SDK的版本,然后转到properties-> android并将版本更改为2.2.有些事情可能会破裂.通常会声明清单中声明的​​版本,因为该项目使用仅适用于该版本或更高版本的SDK功能.

com.google.android.gms.maps.GoogleMap.CancelableCallback的实例源码

com.google.android.gms.maps.GoogleMap.CancelableCallback的实例源码

项目:VR-One    文件:MapActivity.java   
/**
 * Called when the Animate To "Go To Analog Stick" button is clicked.
 */
public void onGoToVrController(View view) {

    if (!checkReady()) {
        return;
    }

    changeCamera(CameraUpdateFactory.newCameraPosition(vrControllerCameraPos),new CancelableCallback() {
        @Override
        public void onFinish() {
            Toast.makeText(getBaseContext(),"Animation to Analog Stick complete",Toast.LENGTH_SHORT)
                    .show();
        }

        @Override
        public void onCancel() {
            Toast.makeText(getBaseContext(),"Animation to Analog Stick canceled",Toast.LENGTH_SHORT)
                    .show();
        }
    });
}
项目:mage-android    文件:MapFragment.java   
@Override
public boolean onMyLocationButtonClick() {
    if (location != null) {
        LatLng latLng = new LatLng(location.getLatitude(),location.getLongitude());
        float zoom = map.getCameraPosition().zoom < 15 ? 15 : map.getCameraPosition().zoom;
        map.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng,zoom),new CancelableCallback() {

            @Override
            public void onCancel() {
                mapWrapper.setonMapPanListener(MapFragment.this);
                followMe = true;
            }

            @Override
            public void onFinish() {
                mapWrapper.setonMapPanListener(MapFragment.this);
                followMe = true;
            }
        });
    }
    return true;
}
项目:geofenceeditor    文件:GeofenceEditorActivity.java   
public void setLocation(final double latitude,final double longitude,final int zoom) {
    CameraUpdate update;
    if (-1 == zoom) {
        update = CameraUpdateFactory.newLatLng(new LatLng(latitude,longitude));
    } else {
        update = CameraUpdateFactory.newLatLngZoom(new LatLng(latitude,longitude),zoom);
    }

    mMap.animateCamera(update,1000,new CancelableCallback() {
        @Override
        public void onFinish() {
            completeSetLocation(latitude,longitude,zoom);
        }

        @Override
        public void onCancel() {
        }
    });
}
项目:XamarinAdmobTutorial    文件:CameraDemoActivity.java   
/**
 * Called when the Animate To Sydney button is clicked.
 */
public void onGoToSydney(View view) {
    if (!checkReady()) {
        return;
    }

    changeCamera(CameraUpdateFactory.newCameraPosition(SYDNEY),"Animation to Sydney complete","Animation to Sydney canceled",Toast.LENGTH_SHORT)
                    .show();
        }
    });
}
项目:HereAStory-Android    文件:CameraDemoActivity.java   
/**
 * Called when the Animate To Sydney button is clicked.
 */
public void onGoToSydney(View view) {
    if (!checkReady()) {
        return;
    }

    changeCamera(CameraUpdateFactory.newCameraPosition(SYDNEY),Toast.LENGTH_SHORT)
                    .show();
        }
    });
}
项目:GoogleMapsV2Demo    文件:CameraDemoActivity.java   
/**
 * Called when the Animate To Sydney button is clicked.
 */
public void onGoToSydney(View view) {
    if (!checkReady()) {
        return;
    }

    changeCamera(CameraUpdateFactory.newCameraPosition(SYDNEY),Toast.LENGTH_SHORT)
                    .show();
        }
    });
}
项目:XamarinAdmobTutorial    文件:CameraDemoActivity.java   
/**
 * Change the camera position by moving or animating the camera depending on the state of the
 * animate toggle button.
 */
private void changeCamera(CameraUpdate update,CancelableCallback callback) {
    boolean animated = ((CompoundButton) findViewById(R.id.animate)).isChecked();
    if (animated) {
        mMap.animateCamera(update,callback);
    } else {
        mMap.moveCamera(update);
    }
}
项目:disconnected-content-explorer-android    文件:ReportMapFragment.java   
@Override
public void onMapReady(GoogleMap googleMap) {
    map = googleMap;

    map.setMapType(GoogleMap.MAP_TYPE_NONE);

    map.setonInfoWindowClickListener(this);
    map.setonMapClickListener(this);
    map.setonMarkerClickListener(this);
    map.setonMapLongClickListener(this);

    LatLng latLng = new LatLng(0.0,0.0);
    float zoom = map.getCameraPosition().zoom < 1 ? 1 : map.getCameraPosition().zoom;
    map.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng,new CancelableCallback() {
        @Override
        public void onCancel() {
            // Todo
        }
        @Override
        public void onFinish() {
            // Todo
        }
    });

    offlineMap = new OfflineMap(map);
    offlineMap.setVisible(true);

    geoPackageMapOverlays = new GeoPackageMapOverlays(getActivity(),mapView,map);

    refreshMapMarkers();
}
项目:HereAStory-Android    文件:CameraDemoActivity.java   
/**
 * Change the camera position by moving or animating the camera depending on the state of the
 * animate toggle button.
 */
private void changeCamera(CameraUpdate update,CancelableCallback callback) {
    if (mAnimatetoggle.isChecked()) {
        if (mCustomDurationToggle.isChecked()) {
            int duration = mCustomDurationBar.getProgress();
            // The duration must be strictly positive so we make it at least 1.
            mMap.animateCamera(update,Math.max(duration,1),callback);
        } else {
            mMap.animateCamera(update,callback);
        }
     } else {
        mMap.moveCamera(update);
    }
}
项目:GoogleMapsV2Demo    文件:CameraDemoActivity.java   
/**
 * Change the camera position by moving or animating the camera depending on the state of the
 * animate toggle button.
 */
private void changeCamera(CameraUpdate update,callback);
        }
    } else {
        mMap.moveCamera(update);
    }
}
项目:Shortest-Path-Direction-on-Google-Maps-v2-for-Android    文件:MapActivity.java   
/**
 * Change the camera position by moving or animating the camera depending on
 * input parameter.
 */
private void changeCamera(CameraUpdate update,CancelableCallback callback,boolean instant) {

    if (instant) {
        mMap.animateCamera(update,1,callback);
    } else {
        mMap.animateCamera(update,4000,callback);
    }
}
项目:businessmap    文件:ContactsMapFragment.java   
public boolean showMarkerInfoWindow(ContactsItem contact,boolean animate) {
    if (mMap == null || contact == null) {
        return false;
    }
    final Marker marker = mContactMarkerHashMap.get(contact.hashCode());
    if (marker == null) {
        return false;
    }
    if (animate) {
        mMap.animateCamera(
            CameraUpdateFactory.newCameraPosition(
                new CameraPosition.Builder()
                    .target(marker.getPosition())
                    .zoom(15.5f)
                    .build()
            ),new CancelableCallback() {
                @Override
                public void onCancel() {
                }

                @Override
                public void onFinish() {
                    marker.showInfoWindow();
                }
            }
        );
    } else {
        marker.showInfoWindow();
    }
    return true;
}
项目:clusterkraf    文件:Clusterkraf.java   
/**
 * Show the InfoWindow for the passed Marker and ClusterPoint
 * 
 * @param marker
 * @param clusterPoint
 */
public void showInfoWindow(Marker marker,ClusterPoint clusterPoint) {
    GoogleMap map = mapRef.get();
    if (map != null && marker != null && clusterPoint != null) {
        long dirtyUntil = System.currentTimeMillis() + options.getShowInfoWindowAnimationDuration();
        innerCallbackListener.clusteringOnCamerachangelistener.setDirty(dirtyUntil);
        CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLng(marker.getPosition());
        map.animateCamera(cameraUpdate,options.getShowInfoWindowAnimationDuration(),new CancelableCallback() {

            @Override
            public void onFinish() {
                innerCallbackListener.handler.post(new Runnable() {

                    @Override
                    public void run() {
                        innerCallbackListener.clusteringOnCamerachangelistener.setDirty(0);

                    }
                });
            }

            @Override
            public void onCancel() {
                innerCallbackListener.clusteringOnCamerachangelistener.setDirty(0);
            }
        });
        marker.showInfoWindow();
    }
}
项目:referendum_1o_android    文件:GoogleMapWrapper.java   
@Override
public final void animateCamera(CameraUpdate update,CancelableCallback callback) {
    map.animateCamera(update,callback);
}
项目:referendum_1o_android    文件:GoogleMapWrapper.java   
@Override
public final void animateCamera(CameraUpdate update,int durationMs,durationMs,callback);
}
项目:Field-Work    文件:ATKMap.java   
public void animateCamera(CameraUpdate update,CancelableCallback callback){
    this.map.animateCamera(update,callback);
}
项目:HereAStory-Android    文件:GoogleMapWrapper.java   
@Override
public final void animateCamera(CameraUpdate update,callback);
}
项目:OpenATKLib    文件:ATKMap.java   
public void animateCamera(CameraUpdate update,callback);
}
项目:mtransit-for-android    文件:GoogleMapWrapper.java   
@Override
public final void animateCamera(CameraUpdate update,callback);
}
项目:Shortest-Path-Direction-on-Google-Maps-v2-for-Android    文件:MapActivity.java   
@Override
public void OnDirectionListReceived(List<LatLng> mPointList) {
    if (mPointList != null) {
        polylineoptions rectLine = new polylineoptions().width(10).color(
                Color.RED);
        for (int i = 0; i < mPointList.size(); i++) {
            rectLine.add(mPointList.get(i));
        }
        mMap.addpolyline(rectLine);

        CameraPosition mCPFrom = new CameraPosition.Builder()
                .target(startPosition).zoom(15.5f).bearing(0).tilt(25)
                .build();
        final CameraPosition mCPTo = new CameraPosition.Builder()
                .target(destinationPosition).zoom(15.5f).bearing(0)
                .tilt(50).build();

        changeCamera(CameraUpdateFactory.newCameraPosition(mCPFrom),new CancelableCallback() {
                    @Override
                    public void onFinish() {
                        changeCamera(CameraUpdateFactory
                                .newCameraPosition(mCPTo),new CancelableCallback() {

                                    @Override
                                    public void onFinish() {

                                        LatLngBounds bounds = new LatLngBounds.Builder()
                                                .include(startPosition)
                                                .include(
                                                        destinationPosition)
                                                .build();
                                        changeCamera(
                                                CameraUpdateFactory
                                                        .newLatLngBounds(
                                                                bounds,50),null,false);
                                    }

                                    @Override
                                    public void onCancel() {
                                    }
                                },false);
                    }

                    @Override
                    public void onCancel() {
                    }
                },true);
    }
}
项目:VR-One    文件:MapActivity.java   
/**
 * Change the camera position by moving or animating the camera depending on the state of the
 * animate toggle button.
 */
private void changeCamera(CameraUpdate update,CancelableCallback callback) {
    mMap.moveCamera(update);
}
项目:referendum_1o_android    文件:IGoogleMap.java   
void animateCamera(CameraUpdate update,CancelableCallback callback);
项目:referendum_1o_android    文件:IGoogleMap.java   
void animateCamera(CameraUpdate update,CancelableCallback callback);
项目:HereAStory-Android    文件:IGoogleMap.java   
void animateCamera(CameraUpdate update,CancelableCallback callback);
项目:mtransit-for-android    文件:IGoogleMap.java   
void animateCamera(CameraUpdate update,CancelableCallback callback);

今天的关于谷歌跳舞GoogleDance的分享已经结束,谢谢您的关注,如果想了解更多关于2013 谷歌开发者节(Google DevFest)北京站、android – 使用Google Fit api时谷歌Oauth 2.0 RESULT_CANCELED、android – 无法解析目标’Google Inc.:Google API:16′、com.google.android.gms.maps.GoogleMap.CancelableCallback的实例源码的相关知识,请在本站进行查询。

本文标签: