我正在将我的项目从eclipse转移到Android Studio.在运行我的应用程序时,我收到以下错误.无法找到任何解决方案.我也启用了multidex.
错误:任务':app:transformClassesWithDexForDebug'的执行失败.com.android.build.api.transform.TransformException:java.lang.RuntimeException:com.android.ide.common.process.ProcessException:java.util.concurrent.ExecutionException:com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException:进程'命令'C:\ Program Files\Java\jdk1.7.0_79\bin\java.exe''以非零退出值1结束
我的gradle文件也在下面
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.myapp"
minSdkVersion 9
targetSdkVersion 21
multiDexEnabled true
}buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard- android.txt'), 'proguard-project.txt', 'proguard-google-api-client.txt'
}
}
}
dependencies {
compile 'com.android.support:support-v4:23.4.0'
compile 'com.google.android.gms:play-services:+'
compile 'com.google.http-client:google-http-client-gson:1.20.0'
compile 'com.google.code.gson:gson:2.1'
compile 'com.android.support:appcompat-v7:23.4.0'
compile files('libs/activation.jar')
compile files('libs/additionnal.jar')
compile files('libs/android-support-v7-cardview.jar')
compile files('libs/android-support-v7-recyclerview.jar')
compile files('libs/commons-logging-1.1.1.jar')
compile 'com.google.api-client:google-api-client:1.18.0-rc'
compile 'com.google.api-client:google-api-client-android:1.18.0-rc'
compile 'com.google.api-client:google-api-client-appengine:1.18.0-rc'
compile 'com.google.http-client:google-http-client:1.18.0-rc'
compile 'com.google.http-client:google-http-client-android:1.18.0-rc'
compile 'com.google.http-client:google-http-client-appengine:1.18.0-rc'
compile 'com.google.oauth-client:google-oauth-client:1.18.0-rc'
compile 'com.google.oauth-client:google-oauth-client-appengine:1.18.0-rc'
compile files('libs/google-api-client-gson-1.18.0-rc.jar') …Run Code Online (Sandbox Code Playgroud) 我正在使用viewpager在多个页面上显示一些文本.我正在尝试获取当前视图,我选择了一个新页面.我想获取当前视图的原因是因为基于页码我正在改变一些视图组件的一些属性,如textview,image等.我使用下面的代码相同
ViewPager mPager = (ViewPager) findViewById(R.id.pager);
mPagerAdapter = new ScreenSlidePagerAdapter(getSupportFragmentManager());
mPager.setAdapter(mPagerAdapter);
View CurrView;
OnPageChangeListener pageChangelistener = new OnPageChangeListener() {
@Override
public void onPageSelected(int pageSelected) {
currView = mPager.getChildAt(mPager.getCurrentItem());
myTextView = (TextView)currView.findViewById(R.id.myTextView);
loadBookmarkSetting(pageSelected);//do some changes in myTextView properties based on the page number }
mPager.setOnPageChangeListener(pageChangelistener);
Run Code Online (Sandbox Code Playgroud)
现在我面临的问题是,在滚动3页后,当我到第4页时,我在"myTextView =(TextView)currView.findViewById(R.id.myTextView);"行上得到nullpointer异常.这是因为currView为null.如果我在这里做错了什么想法.有没有其他方法可以捕获viewpager中的当前视图(页面),以便我可以根据我所在的页码对视图进行更改?
我正在显示一个textview(我打算将其填满整个屏幕,不包括它下面的按钮)和一个活动中的按钮(底部的小按钮).我想将textview放在按钮上.我不想硬编码任何高度/宽度.
因此,对于按钮,我将高度广告宽度保持为word_wrap对于textview,我将宽度保持为填充父级.
我想知道的是,无论如何,我可以指定textview高度为screenheight-button高度.我想在xml文件中使用它,但在我的代码中不是dnamically.
在使用viewpager时更新页面的问题需要一些帮助.我正在使用FragmentStatePagerAdapter的简单viewpager.我想要做的就是访问当前的片段/视图,以便我可以更新片段/视图中的一些文本视图.我在论坛中搜索并了解了一些事情 - 处理此问题的方法之一是在适配器的instantiateItem()调用中设置标记并通过findViewbyTag检索视图.我无法理解如何实现这一点,我也不确定它是否适用于FragmentStatePagerAdapter. - 我探讨了各种论坛中提出的其他选项,但无法使它们发挥作用.
我的代码与android http://developer.android.com/training/animation/screen-slide.html中的代码非常相似.基本组件是相同的(片段活动xml,其中一些显示组件包括textview,viewpager xml只有一个视图分页器,一个Fragment类和主要的FragmentActivity类).在我的FragmentActivity类中,我向viewpager添加了一个pageChangelistener,以便在onPageSelected()期间进行textview更改.
任何帮助是值得赞赏的.
添加代码以供参考.
Public class myActivity extends FragmentActivity
//Variable declarations
protected void onCreate(Bundle savedInstanceState) {
ViewPager mPager = (ViewPager) findViewById(R.id.pager);
mPagerAdapter = new ScreenSlidePagerAdapter(getSupportFragmentManager());
mPager.setAdapter(mPagerAdapter);
View CurrView;
OnPageChangeListener pageChangelistener = new OnPageChangeListener() {
@Override
public void onPageSelected(int pageSelected) {
doTextViewChnges();//access the text view and update it based on pageSelected
---THIS IS WHERE I AM STUCK IN TRYING TO GET THE TEXTVIEW IN MY CURRENT FRAGMWNT/VIEW-------
}
mPager.setOnPageChangeListener(pageChangelistener);
}
private class ScreenSlidePagerAdapter extends …Run Code Online (Sandbox Code Playgroud) 我正在使用开发人员网站上的相同代码但在编译时遇到错误. http://developer.android.com/google/gcm/gs.html
复制下面的代码
private void registerBackground() {
new AsyncTask() {
@Override
protected String doInBackground(Void... params) {
String msg = "";
try {
regid = gcm.register(GCM_SENDER_ID);
msg = "Device registered, registration id=" + regid;
// You should send the registration ID to your server over HTTP,
// so it can use GCM/HTTP or CCS to send messages to your app.
// For this demo: we don't need to send it because the device
// will send upstream messages to a server …Run Code Online (Sandbox Code Playgroud) 我正在使用gmailsender在我的应用中发送电子邮件.我按照下面的链接使用JavaMail API在Android中发送电子邮件,而不使用默认/内置应用程序
然而,我注意到每当我使用proguard构建我的APK时,gmail发送者都不起作用(当我安装APK时).没有抛出错误,但不发送电子邮件.如果我禁用proguard然后生成APK,那么使用该APK可以正常工作.
任何人都可以建议这里可能有什么问题.
:::编辑::: - 添加少量错误消息(删节)来自控制台的线路,同时生成APK.我可以通过在PROGUARD配置文件中忽略它们来避免这些警告
[2013-07-09 10:00:38 - ] Proguard returned with error code 1. See console
[2013-07-09 10:00:38 - ] Warning: org.apache.harmony.awt.datatransfer.DataProxy: can't find superclass or interface java.awt.datatransfer.Transferable
[2013-07-09 10:00:38 - ] Warning: org.apache.harmony.awt.datatransfer.NativeClipboard: can't find superclass or interface java.awt.datatransfer.Clipboard
[2013-07-09 10:00:38 - ] Warning: com.sun.mail.imap.protocol.IMAPSaslAuthenticator: can't find referenced class javax.security.sasl.Sasl
[2013-07-09 10:00:38 - ] Warning: com.sun.mail.imap.protocol.IMAPSaslAuthenticator: can't find referenced class javax.security.sasl.Sasl
[2013-07-09 10:00:38 - ] Warning: com.sun.mail.imap.protocol.IMAPSaslAuthenticator: can't find referenced class javax.security.sasl.SaslClient
[2013-07-09 …Run Code Online (Sandbox Code Playgroud) 我有一个应用程序,我将用户输入的文本存储到json字符串中.然后我将该json字符串存储到一个文件中.然后通过读取文件显示它,从中提取json字符串,最后将字符串显示为textview.然而,我注意到任何特殊字符(而不是符号)如£,÷,€等都不会显示出来.例如,符号€显示为"¬".
下面的一些示例代码供参考
首先是捕获用户输入文本并将其放入文件的代码
//get user entered text
QuestionEditText = (EditText)this.findViewById(R.id.editTextQuestion);
//put that into json object
JSONObject jObjOneQuestionDetails=new JSONObject();
jObjOneQuestionDetails.put("Question", QuestionEditText.getText());
//write json object into file
FileOutputStream output = openFileOutput("MyFileName",MODE_PRIVATE);
OutputStreamWriter writer = new OutputStreamWriter(output);
writer.writejObjOneQuestionDetails.put());
writer.flush();
writer.close();
Run Code Online (Sandbox Code Playgroud)
现在在代码下面,用于从文件中获取字符串并将其显示给用户
//define and initialize variables
QuestionEditText = (EditText)this.findViewById(R.id.editTextQuestion);
private JSONArray jArrayQuizQuestions=new JSONArray();
private JSONObject jObjQuizTitle=new JSONObject();
//load JSONObject with the File
int ch;
StringBuffer fileContent = new StringBuffer("");
FileInputStream fis;
String fileString;
fis = this.getBaseContext().openFileInput("MyFileName");
while( (ch = fis.read()) != -1)
fileContent.append((char)ch);
fileString …Run Code Online (Sandbox Code Playgroud)