我使用Google App Engine连接到Firebase,但它引发异常。我下面在提到的步骤:访问控制异常:在GoogleAppEngine中使用Firebase时访问被拒绝(“java.lang.RuntimePermission”“modifyThreadGroup”)
https://cloud.google.com/solutions/mobile/firebase-app-engine-android-studio
虽然引用进行了更新有库,所以我跑的依赖关系的新版本:
/** libraries for using firebase on the GoogleAppEngine */
compile 'com.google.appengine:appengine-api-1.0-sdk:1.9.31'
compile 'com.firebase:firebase-client-jvm:2.5.0'
compile 'org.apache.httpcomponents:httpclient:4.3.5'
此外,而不是创建App Engine Java Servlet Module
的我创建了App Engine Backend with Google Cloud Messaging
,因为它更容易添加GCM功能,并且我已经手动创建了该servlet(请注意,Servlet在没有Firebase声明的情况下工作正常)
的AppEngine-web.xml中
<?xml version="1.0" encoding="utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
<application>GOOGLE_CONSOLE_PROJECT_ID</application>
<version>1</version>
<threadsafe>true</threadsafe>
<manual-scaling>
<instances>1</instances>
</manual-scaling>
<system-properties>
<property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/>
<property name="gcm.api.key" value="YOUR_KEY_HERE"/>
</system-properties>
</appengine-web-app>
它崩溃,当我创建火力地堡参考:
final Firebase usersLocation = new Firebase(Constants.FIREBASE_URL_USERS);
例外:
java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "modifyThreadGroup")
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:382)
at java.security.AccessController.checkPermission(AccessController.java:572)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
at com.google.apphosting.runtime.security.CustomSecurityManager.checkPermission(CustomSecurityManager.java:55)
at com.google.apphosting.runtime.security.CustomSecurityManager.checkAccess(CustomSecurityManager.java:136)
at java.lang.ThreadGroup.checkAccess(ThreadGroup.java:315)
at java.lang.Thread.init(Thread.java:391)
at java.lang.Thread.init(Thread.java:349)
at java.lang.Thread.<init>(Thread.java:675)
Google/Firebase工程师在这里。感谢更新。我们正在调查造成这种情况的原因。您可以联系[email protected]吗? –
@FrankvanPuffelen谢谢。你想让我通过电子邮件发送什么? –
主要是为了让我们可以直接联系您,以防我们需要更多信息。如果你更愿意留在这里也很好。 –