Google Plus Average ratng: 3,7/5 6459 votes
Google+, pronounced and sometimes written as Google Plus, is an Internet-based social network that is owned and operated by Google. The service, Google's.
Google said on Monday that it would shut down Google Plus, the company’s long-struggling answer to Facebook’s giant social network, after it discovered a security vulnerability that exposed the private data of up to 500,000 users.
Google did not tell its users about the security issue when it was found in March because it didn’t appear that anyone had gained access to user information, and the company’s “Privacy & Data Protection Office” decided it was not legally required to report it, the search giant said in a blog post.
The decision to stay quiet, which raised eyebrows in the cybersecurity community, comes against the backdrop of relatively new rules in California and Europe that govern when a company must disclose a security episode.
Up to 438 applications made by other companies may have had access to the vulnerability through coding links called application programming interfaces. Those outside developers could have seen user names, email addresses, occupation, gender and age. They did not have access to phone numbers, messages, Google Plus posts or data from other Google accounts, the company said.
Google said it had found no evidence that outside developers were aware of the security flaw and no indication that any user profiles were touched. The flaw was fixed in an update made in March.
Google looked at the “type of data involved, whether we could accurately identify the users to inform, whether there was any evidence of misuse, and whether there were any actions a developer or user could take in response. None of these thresholds were met in this instance,” Ben Smith, a Google vice president for engineering, wrote in the blog post.
The disclosure made on Monday could receive additional scrutiny because of a memo to senior executives reportedly prepared by Google’s policy and legal teams that warned of embarrassment for the company — similar to what happened to Facebook this year — if it went public with the vulnerability.
The memo, according to The Wall Street Journal, warned that disclosing the problem would invite regulatory scrutiny and that Sundar Pichai, Google’s chief executive, would most likely be called to testify in front of Congress. A Google spokesman, Rob Shilkin, declined to comment on the memo. He said the company had planned to announce the disclosures later this week but moved up the announcement when it learned of The Journal’s article.
Early this year, Facebook acknowledged that Cambridge Analytica, a British research organization that performed work for the Trump campaign, had improperly gained access to the personal information of up to 87 million Facebook users. Mark Zuckerberg, Facebook’s chief executive, spent two days testifying in congressional hearings about that and other issues.
In May, Europe adopted new General Data Protection Regulation laws that require companies to notify regulators of a potential leak of personal information within 72 hours. Google’s security issue occurred in March, before the new rules went into effect.
California recently passed a privacy law, which goes into effect in 2020, allowing consumers in the event of a data breach to sue for up to $750 for each violation. It also gives the state’s attorney general the right to go after companies for intentional violations of privacy.
Steven Andrés, a professor who lectures about management information systems at San Diego State University, said there was no obvious legal requirement for Google to disclose the vulnerability. But he added that it was troubling — though unsurprising — to see that the company was discussing how reporting the vulnerability might look to regulators.
There is no federal law requiring companies to disclose a security vulnerability. Companies must wade through a patchwork of state laws with different standards.
Arvind Narayanan, a computer science professor at Princeton University who is often critical of tech companies for lax privacy practices, said on Twitter that it was common for companies to fix a problem before it is exploited. “That happens thousands of times every year. Requiring disclosure of all of these would be totally counterproductive,” Mr. Narayanan wrote.
In private meetings with lawmakers last month, Mr. Pichai promised to testify before the end of the year at a hearing about whether tech companies are filtering conservative voices in their products. He is also expected to be asked if Google plans to re-enter the Chinese market with a censored search engine. The vulnerability that was discovered in March and the company’s discussions about how regulators could react also are likely to come in his testimony.
Just last month, Google was criticized for not sending Mr. Pichai to a hearing attended by top executives from Facebook and Twitter.
Introduced in 2011, Google Plus was meant to be a Facebook competitor that linked users to various Google products, including its search engine and YouTube. But other than a few loyal users, it did not catch on. By 2018, it was an afterthought.
Google would not say how many people now frequent Google Plus, but it said in the blog post that the service had low usage — 90 percent of users’ sessions are less than five seconds long.
When Google’s engineers discovered the vulnerability, they concluded that the work required to maintain Google Plus was not worth the effort, considering the meager use of the product, the company said.
Google said it planned to turn off the consumer version of Google Plus in August 2019, though a version built for corporate customers will still exist.
The failure of Google Plus has relieved Google of some pressure on issues faced by Facebook and Twitter, particularly Russian disinformation efforts.
When Google announced in August that it had deleted accounts suspected of ties to Iranian influence campaigns, the company disclosed that it had deleted 13 Google Plus accounts — compared to 652 accounts that Facebook had deleted for the same concerns.
Documentation
When a user finds something interesting on the web, sometimes a lightweight endorsement feels right. Other times, a user just wants to share it with friends, right away. This document will help webmasters and programmers add a Google+ share button to their pages.
Your use of the share code is subject to the Google Button Publisher Policies.
Getting Started
A Simple Button
The simplest way to include a share button on your page is just by including the necessary JavaScript and adding a share tag. This basic implementation will include the standard 20px share button with a variable width.
The script must be sourced at https and can be included at any point on the page without restriction (see the FAQ for more information).
Share Tag
Here is the standard share tag syntax:
If you want, you can use this HTML5-valid share tag (the class attribute must be set to g-plus
, and any button attributes must be prefixed with data-
).
By default, the included script will traverse the DOM and render share tags as buttons. You can improve rendering time on large pages by using the JavaScript API to traverse only a single element within the page, or to render a specific element as a share button.
Deferred execution with onLoad and script tag parameters
Use the onload
callback to execute widget code after all dependencies have loaded.
To specify script tag parameters, use the following syntax:
A full example is included in the Examples section.
Configuration
Setting the URL to share
The URL that is shared is determined by one of three things, in this order:
- 1. The share tag's href attribute
- This attribute explicitly defines the URL to share.
- 2. The page's
<link ... />
tag - If the share tag's href attribute is not provided, Google will use the page's canonical URL. For more information on defining the canonical URL for a page, see the Canonicalization help article.
- 3. The URL provided by
document.location.href
(not recommended) - If neither of the previous pieces of data are present, Google will use the URL of the page as found in the DOM. Because this URL might contain session IDs, anchors, or other parameters that are not actually part of the canonical URL, we highly recommend either setting the
href
attribute or adding a <link ...>
tag to your page.
Script Tag Parameters
These parameters are defined within the <script />
element. The parameters control the language and button loading mechanism that are used across the entire web page.
Key | Value | Default | Description |
---|
lang | language code | en-US | Sets the language to use for all of the Google+ plugins on the page. For available language code values, see the list of supported language codes and a lang example. |
parsetags | explicit, onload | onload | Sets the loading mechanism to use. - onload
- All share button on the page are automatically rendered after the page loads. See the deferred execution onLoad example.
- explicit
- share button are rendered only with explicit calls to
gapi.plus.go or gapi.plus.render . When you use the explicit load in conjunction with go and render calls that point to specific containers in your page, you prevent the script from traversing the entire DOM, which can improve button rendering time. See the gapi.plus.go and gapi.plus.render examples.
|
Share Tag Attributes
These parameters control settings for each button. You can set these parameters as attribute/value pairs on share tags, or as key/value pairs in a call to gapi.plus.render
.
Attribute | Value | Default | Description |
---|
data-href | URL to share | current page URL | The URL to share. If you set this attribute by using gapi.plus.render , you should not escape the URL. |
data-annotation | inline bubble vertical-bubble none
| bubble | The annotation to display next to the button. - inline
- Display the number of users who have shared the page as a number next to the button.
- bubble
- Display the number of users who have shared the page in a graphic next to the button.
- vertical-bubble
- Display the number of users who have shared the page in a graphic above the button.
- none
- Do not render any additional annotations.
|
data-width | int | — | The maximum width to allocate to the entire share plugin. See Button Sizes for more information. |
data-height | int | 20 | The height to assign the button. This may be 15, 20, 24 or 60. See Button Sizes for more information. |
data-align | | left | Sets the alignment of the button assets within its frame. |
data-expandTo | comma-separated list of | empty list | The preferred positions in which to display hover and confirmation bubbles, relative to the button. Set this parameter when your page contains certain elements, such as Flash objects, that might interfere with rendering the bubbles. If omitted, the rendering logic will guess the best position, usually defaulting to below the button (bottom). |
data-onstartinteraction | function(jsonParam) | — | If specified, this function is called when an interaction bubble appears (such as when the user hovers over the button or starts the sharing flow). This function must be in the global namespace and may accept a single parameter, which will be a JSON object with the following structure: |
data-onendinteraction | function(jsonParam) | — | If specified, this function is called when the interaction bubble disappears. You can use this callback function to modify your page, such as resuming a video, when the bubble closes. This function accepts a single parameter, which is identical in structure to the parameter passed to onstartinteraction . |
Button Sizes
The following table lists some example button sizes and the attribute values.
Note:If you specify a
width
or
height
that is too small, the share button will not render. If this occurs an error will be reported to your JavaScript console.
Button Example | Width (px) | Height (px) | Annotation |
---|
— | 15 | — |
— | 20 | — |
— | 24 | — |
— | — | bubble |
— | — | vertical-bubble |
200 | 20 | — |
Populating the +Snippet
The share bubble (along with the resulting Google+ activity post) includes a preview, or +Snippet, that contains the page title, a brief description of the page, and a thumbnail image. These pieces of data are extracted from content found at the share URL and may be easily specified by the owner of that content.
For detailed information please see the snippet documentation.
JavaScript API
The share button JavaScript defines two button-rendering functions under the gapi.plus
namespace. You must call one of these functions if you disable automatic rendering by setting parsetags
to 'explicit
'.
Method | Description |
---|
gapi.plus.render( container, parameters ) | Renders the specified container as a share button. - container
- The container to render as the share button. Specify either the ID of the container (string) or the DOM element itself.
- parameters
- An object containing tag attributes as key=value pairs, for example,
{'width': '300', 'theme': 'light'}.
|
gapi.plus.go( opt_container ) | Renders all share button tags and classes in the specified container. This function should be used only if parsetags is set to explicit , which you might do for performance reasons. - opt_container
- The container containing the share button tags to render. Specify either the ID of the container (string) or the DOM element itself. If the
opt_container parameter is omitted, all share button tags on the page are rendered.
|
Share Link
The share link is intended for native client applications, Flash applications, highly privacy-sensitive sites, and others who may not be able to use the +1 or share button. Adding the following markup to your site will include a simple icon which will pop open a share dialog for your visitors.
Note: Replace {URL} with the URL of the page you want to share. You must properly escape any user-generated content that may occur within {URL}
Share Link Sizes
The share icon is available in a number of different sizes.
Size | Example | Image URL | Width | Height |
---|
Large | https://www.gstatic.com/images/icons/gplus-64.png | 64 | 64 |
Medium | https://www.gstatic.com/images/icons/gplus-32.png | 32 | 32 |
Small | https://www.gstatic.com/images/icons/gplus-16.png | 16 | 16 |
Share Endpoint
The share link invokes the Google+ share endpoint, which you can also link to directly:
The Google+ share endpoint accepts the following query parameters:
Parameter | Description |
---|
url | The URL of the page to share. This value should be url encoded. |
hl | The language code for the locale to use on the Google+ sharing page. |
Share Bookmarklet
Drag and drop this link to your Bookmarks Bar to be able to easily Share on Google+.
Google Plus Page
Examples
Basic Page
Deferred execution with language code
Mobile
Share on Android
Google Plus Photos
Content can be shared from your app to Google+ by using the standard ACTION_SEND
intent, which can launch the Google+ share dialog. For more information, see Share on Google+ for Android
Frequently Asked Questions
Can I place multiple buttons on a single page that all share different URLs? Yes. Use the href
attribute as specified in share tag parameters to indicate the URL to be shared. Is there any latency impact from the position of the <script>
tag in the page? No, there is no significant latency impact from the placement of the <script>
tag. However, by placing the tag at the bottom of the document, just before the body close tag, you may improve the loading speed of the page. Does the <script>
tag need to be included before the share tag? No, the <script>
tag can be included anywhere in the page. Does the <script>
tag need to be included before another <script>
tag calls one of the methods in the JavaScript API section? Yes, if you use any of the JavaScript API methods, they need to be placed in the page, after the <script>
inclusion. Do I need to use the href
attribute? The href
attribute is not required. See share URL for more information Why is the hover bubble cut off by Adobe Flash content? By default Flash content renders in front of all other HTML content. This includes hover bubbles and other content rendered by the share button. This may result in some share button content appearing to be cut off by Adobe Flash elements in your page.
The solution depends on your situation. If you can edit the HTML source code for the Flash object on your page, you can simply add a property to the object element. However, if the Flash element is being added to your page by a script (as is the typical case for ads), you will need a more sophisticated solution.
First, if you have access to the HTML source code for the Flash object on your page, you must set the wmode
parameter to 'transparent
'. You can do this by adding a parameter to the Flash object element:
For other cases, where the Flash element is added by a script, you may still be able to resolve this issue. You can programmatically add the above described parameter using JavaScript. FlashHeed is an example of this technique. This will work as long as the Flash is not embedded inside an iframe. If the Flash element is inside an iframe, you must reposition either the Flash content or the share button to prevent an overlap.
What web browsers are supported? All Google+ plugins support the sameweb browsers as the Google+ web interface:
- Windows: Chrome, Firefox 3.6 and up, Internet Explorer 8 and up
- Linux : Chrome, Firefox 3.6 and up
- Mac: Chrome, Firefox 3.6 and up, Safari 4 and up
What data is sent to Google when you click share? When a user clicks a Share button, Google receives information including the URL of the content being shared, any user comments, information about the user's Google profile, the user's IP address, and other browser-related information. Language Codes
Language | Value |
---|
Afrikaans | af | Amharic | am | Arabic | ar | Basque | eu | Bengali | bn | Bulgarian | bg | Catalan | ca | Chinese (Hong Kong) | zh-HK | Chinese (Simplified) | zh-CN | Chinese (Traditional) | zh-TW | Croatian | hr | Czech | cs | Danish | da | Dutch | nl | English (UK) | en-GB | English (US) | en-US | Estonian | et | Filipino | fil | Finnish | fi | French | fr | French (Canadian) | fr-CA |
| Language | Value |
---|
Galician | gl | German | de | Greek | el | Gujarati | gu | Hebrew | iw | Hindi | hi | Hungarian | hu | Icelandic | is | Indonesian | id | Italian | it | Japanese | ja | Kannada | kn | Korean | ko | Latvian | lv | Lithuanian | lt | Malay | ms | Malayalam | ml | Marathi | mr | Norwegian | no | Persian | fa | Polish | pl |
| Language | Value |
---|
Portuguese (Brazil) | pt-BR | Portuguese (Portugal) | pt-PT | Romanian | ro | Russian | ru | Serbian | sr | Slovak | sk | Slovenian | sl | Spanish | es | Spanish (Latin America) | es-419 | Swahili | sw | Swedish | sv | Tamil | ta | Telugu | te | Thai | th | Turkish | tr | Ukrainian | uk | Urdu | ur | Vietnamese | vi | Zulu | zu |
|