我正在尝试使用新的Android Studio,但我似乎无法让它正常工作.
我正在使用Gson库来序列化/反序列化JSON对象.但是库不知何故不包含在构建中.
我创建了一个只有MainActivity的新项目.在/ libs文件夹中复制gson-2.2.3.jar并将其添加为库依赖项(右键单击 - >添加为库).这包括android studio中的jar,因此可以从源文件中引用它.
当我尝试运行该项目时,它无法编译,所以我添加:
compile files('libs/gson-2.2.3.jar')
Run Code Online (Sandbox Code Playgroud)
到de .gradle文件中的依赖项.之后它正确编译,但在运行应用程序时,我得到了一个ClassDefNotFoundException.
有谁知道我做错了什么?
android dependency-management gradle gson android-gradle-plugin
我正在尝试在Android中创建邮件发送应用程序.
如果我使用:
Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
Run Code Online (Sandbox Code Playgroud)
这将启动内置的Android应用程序; 我正在尝试直接发送邮件,而不使用此应用程序.
我正在尝试使用Java发送电子邮件:
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
public class SendEmail {
public static void main(String [] args) {
// Recipient's email ID needs to be mentioned.
String to = "abcd@gmail.com";
// Sender's email ID needs to be mentioned
String from = "web@gmail.com";
// Assuming you are sending email from localhost
String host = "localhost";
// Get system properties
Properties properties = System.getProperties();
// Setup mail server
properties.setProperty("mail.smtp.host", host);
// Get the default Session object.
Session session = Session.getDefaultInstance(properties); …Run Code Online (Sandbox Code Playgroud) 我的用户经常遇到错误.应用程序在启动期间崩溃.当应该加载MainActivity时,VM显然无法找到该类.我无法弄清楚为什么.该应用程序的体系结构是我的免费和专业版都使用的共同项目.不知道它是否相关.请参阅下面的堆栈跟踪.有什么想法吗?
java.lang.NoClassDefFoundError: com.android.common.MainActivity
at com.mycompany.myapp.Splash.onCreate(Splash.java:23)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1615)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3687)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: com.android.common.MainActivity in loader dalvik.system.PathClassLoader[/system/framework/com.google.android.maps.jar:/data/app/com.android.pro-1.apk]
Run Code Online (Sandbox Code Playgroud)
编辑:
感谢下面的评论,理查德.现在我已经改变com.android.Splash了别的东西.反正它不是真正的类名.我的错...!
我有一个Android应用程序,利用另一个项目作为项目参考.我已进入应用程序选项,构建路径,然后在项目引用中选择项目.
一切都构建和部署良好,但当我尝试运行应用程序并在该项目中实例化一个类时,我得到一个java.lang.NoClassDefFoundError错误rrrrrr.
我不是java项目专家,所以我假设我已经做了一些简单的事情.有任何想法吗?
我有一个标准的Java项目,我在其中编写代码来解析来自互联网的一些BBC Radio XML数据.该项目名为BBCSchedules,我感兴趣的类称为BBCChannel.
我现在正在尝试在Android应用程序中使用BBCChannel类.我应该怎么做呢?
我已经尝试了各种各样的东西,在互联网上提供了各种建议,而我现在所处的位置是将我的BBCSchedules项目编译为.jar文件,并使用Build Path /将其导入到Android项目中库/添加外部Jar选项.但是,Eclipse仍然无法识别BBCChannel类,因此不会让我运行应用程序.
我想我做了一些愚蠢的错事,但它是什么?
更新:我已经尝试了如何在Android项目中使用外部JAR中列出的步骤?我能找到的其他各种StackOverflow问题似乎与此有关,但绝对没有任何效果.还有其他想法吗?
更新:我与下面第一个答案的作者讨论过,这与我如何使用Eclipse附加.jar文件有关.他发送给我的.jar文件已经附加的项目无法正常工作.有没有其他任何想法?
我正在尝试开发一个Android应用程序来浏览我拥有的Wordpress支持的博客.我正在试图弄清楚如何从博客中检索帖子和其他信息以显示在应用程序中.我看了一遍,但我觉得完全迷失了.这可以完全用Java/XML完成吗?如果是这样,怎么样?
谢谢!
我打算创建一个Android应用程序,执行无头登录网站,然后从后续页面抓取一些内容,同时保持登录会话.
我首先在普通的Java项目中使用了HtmlUnit,它运行得很好.但后来发现HtmlUnit与Android不兼容.
然后我通过向登录表单发送HTTP"POST"请求来尝试JSoup库.但由于JSoup不支持JavaScript,因此生成的页面不会完全加载.
然后我建议看看Selendroid,它实际上是一个android测试自动化框架.但我真正需要的是一个支持JavaScript和Android的Html解析器.我发现Selendroid很难理解哪些我甚至无法弄清楚要使用哪些依赖项.
使用Selenium WebDriver,代码将如下所示.但有人可以向我展示一个类似Selendroid的代码示例吗?
WebDriver driver = new FirefoxDriver();
driver.get("https://mail.google.com/");
driver.findElement(By.id("email")).sendKeys(myEmail);
driver.findElement(By.id("pass")).sendKeys(pass);
// Click on 'Sign In' button
driver.findElement(By.id("signIn")).click();
Run Code Online (Sandbox Code Playgroud)
并且,
当我将项目链接到我已复制到我的项目lib文件夹的facebookSDK jar文件时,我得到java.lang.NoClassDefFoundError:com.facebook.android.R $布局错误,而不是将我的项目链接到我工作区中的facebookSDK库项目.当我链接到工作区中的库项目时,它工作正常.
谁能告诉我如何解决这个问题.我正在使用facebook sdk 3.0 for android.提前致谢.
编辑:生成带有警告的jar文件后,我的logcat中出现以下错误
01-17 12:42:04.790: E/AndroidRuntime(3073): FATAL EXCEPTION: main
01-17 12:42:04.790: E/AndroidRuntime(3073): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.games.game/com.facebook.LoginActivity}: android.content.res.Resources$NotFoundException: File 296108030489520 from xml type layout resource ID #0x7f030001
01-17 12:42:04.790: E/AndroidRuntime(3073): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1816)
01-17 12:42:04.790: E/AndroidRuntime(3073): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1837)
01-17 12:42:04.790: E/AndroidRuntime(3073): at android.app.ActivityThread.access$1500(ActivityThread.java:132)
01-17 12:42:04.790: E/AndroidRuntime(3073): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1033)
01-17 12:42:04.790: E/AndroidRuntime(3073): at android.os.Handler.dispatchMessage(Handler.java:99)
01-17 12:42:04.790: E/AndroidRuntime(3073): at android.os.Looper.loop(Looper.java:143)
01-17 12:42:04.790: E/AndroidRuntime(3073): at android.app.ActivityThread.main(ActivityThread.java:4196)
01-17 12:42:04.790: E/AndroidRuntime(3073): at java.lang.reflect.Method.invokeNative(Native Method)
01-17 12:42:04.790: E/AndroidRuntime(3073): …Run Code Online (Sandbox Code Playgroud) 我在Android项目中包含了一个jar文件,如在Android项目中如何使用外部JAR中所述?.使用MannyNS和Vinayak B.在本文中描述的两种方法,我得到错误"找不到类'test.libraryCalc.Calc",这是该库提供的类.以下代码说明了该问题:
通过库提供的示例类:Calc.java
package test.libraryCalc;
public class Calc {
public int add(int a, int b){
return a + b;
}
}
Run Code Online (Sandbox Code Playgroud)
LibraryTestActivity.java
package test.library;
import test.libraryCalc.Calc;
import android.app.Activity;
import android.os.Bundle;
public class LibraryTestActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Calc calc = new Calc();
int c = calc.add(3, 4);
}
}
Run Code Online (Sandbox Code Playgroud)
我将包含Calc.java的jar文件导出到LibraryTest\libs\calc.jar

并使用LibraryTest的Java Build Path中的"Add JARs ..."按钮添加对它的引用
该库显示在LibraryTest中的Referenced库中

LibraryTest没有构建问题,但在模拟器上运行时,LogCat中显示以下内容:
12-27 14:01:33.965: E/dalvikvm(747): Could not …Run Code Online (Sandbox Code Playgroud) android ×9
java ×4
jar ×3
email ×2
facebook ×1
gradle ×1
gson ×1
import ×1
jakarta-mail ×1
selendroid ×1
selenium ×1
web-scraping ×1
wordpress ×1
xml ×1