标签: android

完成之前的所有活动

我的应用程序有以下流程屏幕:

Home->screen 1->screen 2->screen 3->screen 4->screen 5

现在我log out 在每个屏幕上都有一个公共按钮

(Home/ screen 1 / screen 2 /screen 3/ screen 4 / screen 5)

我希望当用户点击退出按钮(从任何屏幕)时,所有屏幕都将完成,并且Log in将打开一个新屏幕.

我几乎尝试过所有FLAG_ACTIVITY这一切.我还在stackoverflow中查看了一些答案,但无法解决问题.我的应用程序是在Android 1.6上,因此无法使用FLAG_ACTIVITY_CLEAR_TASK

有什么方法可以解决这个问题吗?

java android flow screen android-activity

345
推荐指数
19
解决办法
29万
查看次数

Android上支持的语言/区域设置列表是什么?

我想知道如何为不同语言命名我的文件夹.我在哪里可以找到Android上支持的语言列表?

android localization

345
推荐指数
12
解决办法
32万
查看次数

HttpClient不会在Android Studio中导入

我有一个用Android Studio编写的简单类:

package com.mysite.myapp;

import org.apache.http.client.HttpClient;

public class Whatever {
    public void headBangingAgainstTheWallExample () {
        HttpClient client = new DefaultHttpClient();
    }
}
Run Code Online (Sandbox Code Playgroud)

从这里我得到以下编译时错误:

Cannot resolve symbol HttpClient

HttpClient包含在Android Studio SDK中?即使不是,我也将它添加到我的Gradle构建中:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.0'
    compile 'org.apache.httpcomponents:httpclient:4.5'
}
Run Code Online (Sandbox Code Playgroud)

无论有没有最后一个编译行,错误都是一样的.我错过了什么?

android gradle apache-httpclient-4.x android-gradle-plugin

345
推荐指数
14
解决办法
54万
查看次数

为什么在Android上的某些设备上使用相机意图捕获的图像会被旋转?

我正在捕捉图像并将其设置为图像视图.

public void captureImage() {

    Intent intentCamera = new Intent("android.media.action.IMAGE_CAPTURE");
    File filePhoto = new File(Environment.getExternalStorageDirectory(), "Pic.jpg");
    imageUri = Uri.fromFile(filePhoto);
    MyApplicationGlobal.imageUri = imageUri.getPath();
    intentCamera.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
    startActivityForResult(intentCamera, TAKE_PICTURE);
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intentFromCamera) {
    super.onActivityResult(requestCode, resultCode, intentFromCamera);

    if (resultCode == RESULT_OK && requestCode == TAKE_PICTURE) {

        if (intentFromCamera != null) {
            Bundle extras = intentFromCamera.getExtras();
            if (extras.containsKey("data")) {
                bitmap = (Bitmap) extras.get("data");
            }
            else {
                bitmap = getBitmapFromUri();
            }
        }
        else {
            bitmap = getBitmapFromUri();
        }
        // …
Run Code Online (Sandbox Code Playgroud)

camera android image rotation android-camera-intent

344
推荐指数
11
解决办法
19万
查看次数

如何在Genymotion虚拟设备上安装Google框架(Play,Accounts等)?

我目前正在尝试Genymotion和男孩,它比ADT模拟器快得多.

但我需要安装Google Play才能将一些应用下载到其中.我该怎么做呢?

android android-virtual-device google-play-services genymotion

344
推荐指数
7
解决办法
43万
查看次数

在应用程序中存储和保护私有API密钥的最佳实践

大多数应用开发者会将一些第三方库集成到他们的应用中.如果要访问服务,例如Dropbox或YouTube,或者用于记录崩溃.第三方图书馆和服务的数量是惊人的.大多数这些库和服务都是以某种方式通过服务进行身份验证而集成的,大部分时间都是通过API密钥进行的.出于安全目的,服务通常生成公共和私有(通常也称为秘密密钥).不幸的是,为了连接到服务,必须使用此私钥进行身份验证,因此可能是应用程序的一部分.毋庸置疑,这面临着巨大的安全问题.公共和私人API密钥可以在几分钟内从APK中提取,并且可以轻松实现自动化.

假设我有类似的东西,我该如何保护密钥:

public class DropboxService  {

    private final static String APP_KEY = "jk433g34hg3";
    private final static String APP_SECRET = "987dwdqwdqw90";
    private final static AccessType ACCESS_TYPE = AccessType.DROPBOX;

    // SOME MORE CODE HERE

}
Run Code Online (Sandbox Code Playgroud)

您认为存储私钥的最佳和最安全的方式是什么?混淆,加密,你怎么看?

android reverse-engineering proguard api-key

342
推荐指数
13
解决办法
12万
查看次数

如何从我的应用程序的库(SD卡)中选择图像?

这个问题最初是针对Android 1.6提出的.

我在我的应用程序中处理照片选项.

我的Activity中有一个按钮和一个ImageView.当我点击按钮时,它会重定向到图库,我可以选择一个图像.所选图像将出现在我的ImageView中.

android android-gallery android-image

341
推荐指数
7
解决办法
27万
查看次数

Android ListView,每行有不同的布局

我试图确定一个包含每行不同布局的单个ListView的最佳方法.我知道如何创建自定义行+自定义数组适配器以支持整个列表视图的自定义行,但是如何在ListView中实现许多不同的行样式?

android listview listviewitem

341
推荐指数
4
解决办法
19万
查看次数

无法执行dex:方法ID不在[0,0xffff]:65536中

我以前见过各种版本的dex erros,但这个版本是新的.清理/重启等无济于事.图书馆项目似乎完好无损,依赖似乎正确联系在一起.

Unable to execute dex: method ID not in [0, 0xffff]: 65536
Conversion to Dalvik format failed: Unable to execute dex: method ID not in [0, 0xffff]: 65536
Run Code Online (Sandbox Code Playgroud)

要么

Cannot merge new index 65950 into a non-jumbo instruction
Run Code Online (Sandbox Code Playgroud)

要么

java.util.concurrent.ExecutionException: com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536
Run Code Online (Sandbox Code Playgroud)

tl;博士:Google的官方解决方案终于来了!

http://developer.android.com/tools/building/multidex.html

只有一个小提示,你可能需要这样做以防止在执行dex-ing时内存不足.

dexOptions {
        javaMaxHeapSize "4g"
}
Run Code Online (Sandbox Code Playgroud)

还有一种巨型模式可以以不太可靠的方式解决这个问题:

dexOptions {
        jumboMode true
}
Run Code Online (Sandbox Code Playgroud)

更新:如果您的应用程序很胖并且您的主应用程序中有太多方法,则可能需要按照应用程序重新设置应用程序

http://blog.osom.info/2014/12/too-many-methods-in-main-dex.html

android dex

341
推荐指数
7
解决办法
14万
查看次数

Android Studio没有看到设备

Android Studio中的AVD管理器不显示我的设备,但"adb devices"确实显示了它.我错过了一些明显的东西吗?

android device adb android-virtual-device android-studio

341
推荐指数
21
解决办法
77万
查看次数