首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LiteFactory.createGlympse()出错(安卓)

LiteFactory.createGlympse()出错(安卓)
EN

Stack Overflow用户
提问于 2013-08-21 17:19:40
回答 1查看 264关注 0票数 2

您好,我正在尝试使用get为android编写一个应用程序,但是每次我尝试使用createGlymspe函数来创建Glympse实例时,我都会收到这个错误

代码语言:javascript
复制
 08-21 11:10:47.014: E/AndroidRuntime(22391): FATAL EXCEPTION: main
08-21 11:10:47.014: E/AndroidRuntime(22391): java.lang.ExceptionInInitializerError
08-21 11:10:47.014: E/AndroidRuntime(22391):    at com.glympse.android.hal.l.<init>(ContextHolder.java:29)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at com.glympse.android.hal.bd.l(HalFactory.java:23)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at com.glympse.android.a.gz.a(LibFactory.java:35)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at com.glympse.android.api.ad.a(GlympseFactory.java:72)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at com.glympse.android.api.ad.a(GlympseFactory.java:54)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at com.glympse.android.lite.LiteFactory.createGlympse(LiteFactory.java:42)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at pcr.test02.MainActivity$1.onClick(MainActivity.java:27)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at android.view.View.performClick(View.java:3558)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at android.view.View$PerformClick.run(View.java:14157)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at android.os.Handler.handleCallback(Handler.java:605)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at android.os.Handler.dispatchMessage(Handler.java:92)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at android.os.Looper.loop(Looper.java:137)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at android.app.ActivityThread.main(ActivityThread.java:4514)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at java.lang.reflect.Method.invokeNative(Native Method)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at java.lang.reflect.Method.invoke(Method.java:511)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
08-21 11:10:47.014: E/AndroidRuntime(22391):    at dalvik.system.NativeStart.main(Native Method)
08-21 11:10:47.014: E/AndroidRuntime(22391): Caused by: java.lang.NoClassDefFoundError: com.glympse.android.api.R$drawable
08-21 11:10:47.014: E/AndroidRuntime(22391):    at com.glympse.android.hal.db.<clinit>(ResourceGateway.java:13)
08-21 11:10:47.014: E/AndroidRuntime(22391):    ... 18 more

代码如下:

代码语言:javascript
复制
package pcr.test02;

import com.glympse.android.lite.GGlympseLite;
import com.glympse.android.lite.LiteFactory;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends Activity {
    GGlympseLite glympse;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        glympse = LiteFactory.createGlympse(getBaseContext(), "sandbox.glympse.com", "I will not share my key ;-)");
        Button btn1 = (Button) findViewById(R.id.button1);
        btn1.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View arg0) {
        Toast.makeText(getApplicationContext(), "Glymp",
        Toast.LENGTH_LONG).show();

        }
        });
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

}

我不确定问题是不是与上下文有关,但我尝试用"this“来改变它,但没有帮助

EN

回答 1

Stack Overflow用户

发布于 2013-08-22 06:10:07

我能够重现这个问题,我在您的代码中看不到任何问题,但很可能是项目设置有问题。

要检查的第一件事是确保您没有将GlympseApiLite.jar直接放入项目的"libs“文件夹。随着Android开发人员工具(ADT) 17的发布,许多Android开发人员开始看到这个错误,因为Android库的导入方式发生了变化。

相反(如果您使用的是Eclipse)

  1. 转至文件->将安卓->现有安卓代码导入工作区
  2. 找到位于{在导入项目对话框中下载 Finish的位置的GlympseApiLite项目。

这将把GlympseApiLite作为一个项目导入。下一步是从您的项目中引用该项目。

在库部分的左侧project

  • Select Properties

  • Select

  • 列表中,右键单击您的project

  • Select Properties

  • Select安卓,选择Add...

  • Select

  • ,然后选择OK

如果这解决了你的问题,请告诉我。看看我们的安装文档,特别是一步一步的指南,以防你遇到更多的麻烦。

分步走(PDF):https://developer.glympse.com/Content/client/lite/android/tutorials/Glympse_Api_Lite_Android_StepByStep.pdf

快速介绍(HTML):https://developer.glympse.com/Content/client/lite/android/guides/Glympse_Api_Lite_Android_QuickIntroduction.html

编辑(回复回复):

出现错误"Unable to resolve target ' Android -17'“是因为GlympseApi项目是基于该版本的Android API构建的。您可以编辑GlympseAPI的文件"project.properties“,并将"target”的值更改为已安装的版本。到目前为止,最新的版本是android-18。此帖子中的其他信息:Unable to resolve target 'android-16'

对于Jar不匹配错误。查看另一个StackOverflow线程:Jar Mismatch Found 2 versions of android-support-v4.jar in the dependency list

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18353547

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档