相关疑难解决方法(0)

Android - 不支持的服务:音频

我正在尝试理解和解决我在Eclipse工作区日志中看到的错误,同时处理实现IME的Android应用程序.我是Android和Eclipse的新手.

错误是"com.utterkaos.keyboard.LatinKeyboardView无法实例化".

关联的堆栈跟踪是:

java.lang.UnsupportedOperationException:不支持的服务:位于android.inputmethodservice的android.inputmethodservice.KeyboardView(KeyboardView.java:376)的com.android.layoutlib.bridge.android.BridgeContext.getSystemService(BridgeContext.java:434)中的音频. KeyboardView.(KeyboardView.java:279)at com.utterkaos.keyboard.LatinKeyboardView.(LatinKeyboardView.java:30)at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)at at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)at java.lang.reflect.Constructor.newInstance(Unknown Source)at com.android.ide.eclipse.adt.internal.editors.layout.ProjectCallback.instantiateClass(ProjectCallback.java: 402)在android.view.BridgeInflater的android.view.BridgeInflater.loadCustomView(BridgeInflater.java:207)的com.android.ide.eclipse.adt.internal.editors.layout.ProjectCallback.loadView(ProjectCallback.java:166) .createViewFromTag(BridgeI nflater.java:135)在android.view.LayoutInflater.inflate(LayoutInflater.java:466)的android.view.LayoutInflater.inflate(LayoutInflater.java:372)at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate (RenderSessionImpl.java:321)com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:324)位于com的com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:325). android.ide.eclipse.adt.internal.editors.layout.gle2.RenderService.createRenderSession(RenderService.java:372)at com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.renderWithBridge(GraphicalEditorPart .java:1361)位于com.android.ide.eclipse.adt.internal.editors.layout的com.android.ide.eclipse.adt.internal.editors.layout.gle2.GraphicalEditorPart.recomputeLayout(GraphicalEditorPart.java:1115) .gle2.GraphicalEditorPart.activated(GraphicalEditorPart.java:941)位于com.android.ide.eclipse.adt.internal.editors.layout.LayoutEditorDelegate.delegatePageChange(LayoutEditorDeleg)ate.java:450)位于org.eclipse.ui.part.MultiPageEditorPart.setActivePage(MultiPageEditorPart.java)的com.android.ide.eclipse.adt.internal.editors.common.CommonXmlEditor.pageChange(CommonXmlEditor.java:358) 1067)在com的com.android.ide.eclipse.adt.internal.editors.AndroidXmlEditor.selectDefaultPage(AndroidXmlEditor.java:380)的org.eclipse.ui.forms.editor.FormEditor.setActivePage(FormEditor.java:607) .android.ide.eclipse.adt.internal.editors.AndroidXmlEditor.addPages(AndroidXmlEditor.java:285)位于com.android.ide.eclipse.adt.internal.editors.common.CommonXmlEditor.addPages(CommonXmlEditor.java:283)在org.eclipse.ui.ui.Editor.AdditorReference上的org.eclipse.ui.forms.editor.FormEditor.createPages(FormEditor.java:138)org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:348) .createPartHelper(EditorReference.java:670)位于org.eclipse.ui.internal.WorkbenchPartReference.getPart(Workbe)的org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:465)nchPartReference.java:595)org.eclipse.ui.Uternal中的org.eclipse.ui.internal.Editor.Reference.getEditor(EditorReference.java:289)org.eclipse.工作台上的org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2945)位于org.eclipse.ui.internal.WorkbenchPage $ 10.run(WorkbenchPage.java :org.eclipse.Swt.custom.BusyIndi​​cator.showWhile(BusyIndi​​cator.java:70)org.eclipse.ui.Uternal中的org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2789)org.eclipse.ui.internal. org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2764)上的org.eclipse.ui.ide.IDE.openEditor(IDE.java:651)中的WorkbenchPage.openEditor(WorkbenchPage.java:2773)位于org.eclipse.jdt.internal.ui的org.eclipse.jdt.internal.ui.javaeditor.EditorUtility.openInEditor(EditorUtility.java:355)的.eclipse.ui.ide.IDE.openEditor(IDE.java:610) .javaeditor.EditorUtility.openInEditor(EditorUt ility.java:164)org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:249)org.eclipse.jdt.ui.actions.OpenAction.run(OpenAction.java:228)org位于org.eclipse.jdt.internal.ui的org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:251)的.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:275) .packageview.PackageExplorerActionGroup.handleOpen(PackageExplorerActionGroup.java:376)atg.eclipse.jdt.internal.ui.packageview.PackageExplorerPart $ 4.open(PackageExplorerPart.java:538)org.eclipse.ui.OpenAndLinkWithEditorHelper $ InternalListener.open( OpenAndLinkWithEditorHelper.java:48)在org.eclipse的org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)的org.eclipse.jface.viewers.StructuredViewer $ 2.run(StructuredViewer.java:866). ui.internal.JFaceUtil $ 1.run(JFaceUtil.java:49)org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredVi)ewer.java:864)在org.eclipse上的org.eclipse.jer上的org.eclipse.jer.j上的org.eclipse.tructersView.handleOpen(StructuredViewer.java:1152)org.eclipse. jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:275)atg.eclipse.jface.util.OpenStrategy.access $ 2(OpenStrategy.java:269)org.eclipse.jface.util.OpenStrategy $ 1.handleEvent(OpenStrategy. java:309)org.eclipse.swt.wtt.EndTable.sendEvent(EventTable.java:84)atg.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)org.eclipse.swt.widgets .Display.runDeferredEvents(Display.java:4165)位于org.eclipse.wt.ui.Worky.RunEventLoop(Workbench.java:2701)的org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754) org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)org.eclipse.ui.internal.Workbench.access $ 4(Workbench.java:2499)org.eclipse.ui.internal.Workbench $ 7.在org.eclipse.core.databinding.observable.Realm.runW上运行(Workbench.java:679)ithDefault(Realm.java:332)位于org.eclipse.ui的org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)的org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668) .internal.ide.application.IDEApplication.start(IDEApplication.java:123)位于org.eclipse.core.runtime.internal.adaptor的org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) .EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)位于org.eclipse.core.runtime.adaptor.EclipseStarter.run上的org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)(EclipseStarter) .java:344)atg.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)在org.eclipse.equinox.launcher.Main.in的java.lang.reflect.Method.invoke(未知来源)的sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源)在org.eclipse上的org.eclipse.equinox.launcher.Main.run(Main.java:1410)的org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)上的vokeFramework(Main.java:622) .equinox.launcher.Main.main(Main.java:1386)

LatinKeyboardView.java的相关部分是:

public class LatinKeyboardView extends KeyboardView {

    static final int KEYCODE_OPTIONS = -100;

    public LatinKeyboardView(Context …
Run Code Online (Sandbox Code Playgroud)

audio android ime

13
推荐指数
1
解决办法
2959
查看次数

KeyboardView无法实例化

我正在创建安卓键盘看到这个教程.我在这里和其他网站上看到了类似的问题,但我没有得到解决方案.

我正在尝试将KeyboardView实现到我的xml中.但它显示了一些渲染问题和例外 这里是我的Android Studio的快照

快照

我是否需要实现任何或某些gradle 依赖项

例外细节

java.lang.UnsupportedOperationException: Unsupported Service: audio
    at com.android.layoutlib.bridge.android.BridgeContext.getSystemService(BridgeContext.java:463)
    at android.inputmethodservice.KeyboardView.<init>(KeyboardView.java:379)
    at android.inputmethodservice.KeyboardView.<init>(KeyboardView.java:283)
    at android.inputmethodservice.KeyboardView.<init>(KeyboardView.java:279)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
    at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:437)
    at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:154)
    at org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:93)
    at com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadView(LayoutlibCallbackImpl.java:190)
    at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:207)
    at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:132)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:482)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:385)
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:400)
    at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:332)
    at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:350)
    at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:511)
    at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:499)
    at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:888)
    at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:499)
    at com.android.tools.idea.rendering.RenderTask.access$600(RenderTask.java:72)
    at com.android.tools.idea.rendering.RenderTask$3.call(RenderTask.java:611)
    at com.android.tools.idea.rendering.RenderTask$3.call(RenderTask.java:608)
    at com.android.tools.idea.rendering.RenderService.runRenderAction(RenderService.java:363)
    at …
Run Code Online (Sandbox Code Playgroud)

android rendering exception android-softkeyboard

5
推荐指数
0
解决办法
132
查看次数