最近谷歌改变了使用API密钥的政策.您现在不再需要API密钥才能在您的网站上放置Google地图.
这非常有效.但是现在我在我的localhost上运行了这张地图(没有API密钥),这很好用.但是当我把它放在网上时,我会得到一个弹出窗口,说我需要另一个API密钥.在该网站的另一个页面上,Google地图确实有效.它可能与某些事情有关吗?不起作用的地图上有很多(30+)标记吗?
实际上使用API密钥对我来说不是一个很好的解决方案,因为这是许多网站上使用的Wordpress插件的一部分.
我创建了android密钥.我在我的代码中使用密钥
<meta-data android:name="com.google.androoid.maps.v2.API_KEY"
android:value="AIzaSyDlSZf-YTqh_rBLyzjzB6VanBVm4xk6VvI"/>
Run Code Online (Sandbox Code Playgroud)
但是android无法找到api密钥.我不知道这个错误原因.
01-15 15:12:33.526:E/AndroidRuntime(28834):引起:java.lang.RuntimeException:找不到API密钥.检查它是否在AndroidManifest.xml的元素中
mannifest文件 '
<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="17" />
<permission
android:name="com.example.googlemap.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission
android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!--
The following two permissions are not required to use
Google Maps Android API v2, but are recommended.
-->
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.googlemap.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<meta-data android:value="4030500"
android:name="com.google.android.gms.version"/> …Run Code Online (Sandbox Code Playgroud) 在我的C#项目中有APIKeys.cs文件,其中包含带有API密钥的const字符串.我希望这些字符串在Git服务器中是空的,但在我的本地计算机中有实际的API密钥.所以拉动项目的人可以毫无问题地编译它,而我的本地计算机仍然可以在同一个文件中使用API密钥.
如果我尝试上传带有空字符串的APIKeys.cs文件,那么我就不能拥有带有API密钥的本地文件,因为当我尝试推送它时,它将覆盖空的APIKeys.cs文件.此外,我也不能忽略此文件,因为它将从Git服务器中删除空的APIKeys.cs文件.
那么什么是这个问题的最佳自动化方法,它允许在服务器中使用空字符串的类文件,所以当人们拉动它并在本地计算机中拥有真正的类文件时,项目是可编译的?
我正在构建一个使用 Google 的 YouTube Data API v3 的 Electron 应用程序。为了访问 API,我决定使用标准 API 密钥(而不是 OAuth,因为我不会访问任何个人数据)。
但问题是,我不能在我的应用程序中隐藏 API 密钥,也不能使用引用限制(引用限制允许您过滤哪些网站可以使用您的 API 密钥(通过 HTTP 地址)),因为这是一个 Electron 应用程序. 所以基本上,如果有人查看源代码(或者甚至只是查看开发人员工具),他们就可以看到密钥,并且可以自由地使用它。
关于该怎么做的任何建议?谢谢。
关于在 React Native 中为 Android 生成 API 密钥的问题。
我参考了这些:
https://developers.google.com/maps/documentation/android-api/signup#release-cert
https://facebook.github.io/react-native/docs/signed-apk-android.html
https://github.com/lelandrichardson/react-native-maps/blob/master/docs/installation.md
我想知道的是,如果我不在模拟器上运行,如何为 android 设置调试 API 密钥?我知道我可以使用这个命令
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Run Code Online (Sandbox Code Playgroud)
如果我想创建一个模拟器可以查看的 debug.keystore,但是当我想编译、构建 apk 并在我的设备上运行时,这如何工作?我是否必须在 gradle.properties 中设置一个指向它的指针?React Native 是否知道在该文件夹中查找 debug.keystore,并将其合并到 apk 中?我不太确定这些东西是如何工作的。
我有一堆API密钥和秘密(Stripe,Cloudinary等),目前在我的应用程序中进行了硬编码.存放它们的正确位置在哪里?它们应该在服务器中吗?我只是将服务器URL存储在我的最后(如果密钥更改,应用程序将继续工作)?
例如,我在我的app委托文件中有这个:
func configureStripe(){
STPPaymentConfiguration.sharedConfiguration().publishableKey = "pk_test_1234rtyhudjjfjjs"
STPPaymentConfiguration.sharedConfiguration().appleMerchantIdentifier = "merchant.com.myapp"
}
Run Code Online (Sandbox Code Playgroud) 我正在努力让这个电子语音识别工作.以下代码适用于普通浏览器:
if (window.SpeechRecognition === null ){
console.log("Speech Recognition is not supported.");
}else {
let recognizer = new window.SpeechRecognition();
recognizer.continuous = true;
recognizer.lang = "en-US";
recognizer.language = "English";
recognizer.onresult = function (ev){
console.log("Recognition result: ", event);
displayVoice.value == "";
}
recognizer.onerror = function (ev){
console.log("Recognition error: ", ev);
}
// recognizer.interimResults = true;
recognizer.start();
}
Run Code Online (Sandbox Code Playgroud)
但是当切换到电子时我得到了这个:
这意味着:
完成识别所需的网络通信失败.(摘自MDN)
我有GOOGLE_API_KEY设置main.js.
process.env.GOOGLE_API_KEY = 'NIzaadwINWVhlqbjjklajwdBp2zjcFxnD3O3cBwc'; - (it's false stuff don't worry).
// process.env.GOOGLE_DEFAULT_CLIENT_ID = "95131180798735604-4k0pfsc6g.apps.googleusercontent.com"
// process.env.GOOGLE_DEFAULT_CLIENT_SECRET = …Run Code Online (Sandbox Code Playgroud) 我创建了一个 google 工作表并使用 URL 将其转换为 JSON。示例:https://spreadsheets.google.com/feeds/list/SHEETID/od6/public/values?alt =json
我想向此 google 工作表添加 api 密钥。我已经通过 Google Cloud Platform 生成了 API 密钥 - https://console.cloud.google.com/flows/enableapi?apiid=sheets.googleapis.com
现在,我如何将此 API 密钥添加到工作表中?请任何人帮忙。
我正在尝试用 Python 启动 eBay API,但对于如何根据 eBay 的“帐户删除/关闭通知”新要求获取 API 密钥,我找不到任何答案。这是链接: https: //developer.ebay.com/marketplace-account-deletion
\n具体来说,我被告知“您的密钥集当前已禁用”,因为我尚未完成此市场帐户删除/关闭通知所需的任何流程。
\n存在哪些问题?
\n回复:1. 看起来这适用于任何存储用户数据的人。我不认为\xe2\x80\x99是我故意的,因为我真的只是想获得已售数据和当前列表,但这实际上是我吗?
\n回复:2.我不\xe2\x80\x99不明白如何验证它并发回正确的响应。我\xe2\x80\x99已经非常擅长Python,但我\xe2\x80\x99m在这里迷失了。
\neBay 论坛完全没用,我看没有人能回答这个问题。任何帮助是极大的赞赏。
\n我有一个包含 2 个 Android 应用程序的 firebase 项目,分别是com.app.example和com.app.example.dev。一种是指向生产环境并发布在play商店中,另一种是出于开发目的不发布在网上。
这 2 个应用程序具有不同的 api 密钥,在GCP -> APIs and services -> Credentials
根据Firebase 文档的此部分:
Firebase 项目中的所有 Android 应用都列在同一个配置文件中,每个应用只能列出一个 API 密钥。不过,此配置文件中的每个应用程序都可以列出不同的密钥。
事实并非如此,因为两个 Api 密钥都是在提供的google-services.json. 我解决了从两个应用程序中删除错误的 Api 密钥的问题,但这意味着我必须手动删除edit google-services.json。
如何在不触及文件的情况下解决问题?
api-key ×10
android ×3
electron ×2
google-maps ×2
api ×1
c# ×1
ebay-api ×1
firebase ×1
git ×1
google-api ×1
ios ×1
javascript ×1
json ×1
map ×1
python ×1
react-native ×1
swift ×1
swift2 ×1
youtube-api ×1