小编tas*_*iac的帖子

使用密钥库在Travis CI上签署Android应用程序的发布版本的最佳做法是什么?

我一直在使用Travis CI来构建我的Android应用程序.我正在使用debug.keystore我推送到公共存储库的调试版本中对其进行签名

但我想构建发布版本并使用此gradle插件将其上传到Google Play商店.

此过程需要a keystorep12证书文件.

虽然我可以将加密的环境变量添加到Travis CI,但我不知道存储这些文件的最佳方法.

问题1:这样做的最佳做法是什么?有人可以提供开源实现吗?(我找不到一个)

一种可能的实现:安全地存储用户名和密码作为环境变量.将文件存储在启用SSL的环境中,并使用这些用户名和密码通过简单的HTTP身份验证保护它们.curl在构建过程开始之前使用它们进行下载.

问题2这种实施是否有意义?它安全吗?

额外:这2篇博文是与此相关的很好的资料,但不幸的是,它们都没有回答这个问题.

http://stablekernel.com/blog/deploying-google-play-continuous-delivery-android-part-4/ https://www.bignerdranch.com/blog/continuous-delivery-for-android/

continuous-integration android travis-ci

37
推荐指数
1
解决办法
4905
查看次数

sw600dp量词不在Galaxy Tab上工作

我有一个包含2个片段的程序.在平板电脑上,我正在展示它们.
我正在用/layout-sw600dp文件夹这样做.
在摩托罗拉Xoom和其他平板电脑上,它正在工作,但在三星Galaxy Tab 10.1中没有.
这很奇怪.我到处搜索,并没有遇到一个有同样问题的人?
可能是什么原因?

android android-layout galaxy-tab

22
推荐指数
1
解决办法
8194
查看次数

找不到java.lang.Object的类文件

我重新安装了我的日食.然后导入Eclipse中的所有项目,但每个项目都有一个常见错误:

Cannot find the class file for java.lang.Object. at Line 1.

我检查了我的Java Path.但无法解决它.

java eclipse android

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

如何显示正常和拆分ActionBar?

我有几个ActionBar项目,我使用splitActionBarWhenNarrow选项.最新的Gmail应用也使用它.但它右上角还有一个自定义项目,显示当前未读电子邮件的数量.当我使用splitActionBar时,它会将我的所有操作项发送到底部.我怎样才能将它们中的一些发送到底部并强制它们中的一些位于上方.

见右上角

gmail android android-actionbar

18
推荐指数
1
解决办法
1万
查看次数

可选但不可编辑的html文本字段

我正在移动网站上工作,我有一个文本输入字段.

我希望它被选中和可复制但不可编辑.当我添加readonlyonfocus="this.blur()"它变得无法选择时.我怎样才能做到这一点?

html input

18
推荐指数
1
解决办法
2万
查看次数

在Google Maps Android API v2中使用文本标记标记

我已经想出了这篇文章,但它适用于已弃用的Google Maps API

http://tech.truliablog.com/2012/02/23/custom-map-markers-for-android-google-maps/

在新的API中,我找不到一个简单的方法来做到这一点.事实上,我根本做不到.

基本上我想在地图上将TextViews作为标记使用9Patch drawable作为文本的背景.Trulia仍然在他们当前的应用程序中使用新的API v2.你可以在这里查看

Trulia当前的应用程序

我怎样才能做到这一点?

android google-maps google-maps-markers google-maps-android-api-2

13
推荐指数
4
解决办法
3万
查看次数

Volley或ASyncTaskLoader

他们告诉我们应该使用ASyncTaskLoaders,因为他们非常善于阻止UI线程.现在有Volley使用.

我想我们不能同时使用它们,因为Volley自己做了背景.你怎么看?哪一个更好?

android asynctaskloader android-volley

6
推荐指数
1
解决办法
2318
查看次数

如何在Android Studio中使用forked git项目

我从切换EclipseAndroid Studio.我有几个第三方库,我添加了功能或修改了一点.由于库Eclipse也是项目,我们可以访问代码,我没有问题.

在Android Studio compile标签中dependencies很棒,但在我的情况下我不能使用它.

我分叉项目并进行必要的更改,并将项目添加为Android Studio中的模块.既然库项目已经有了settings.gradle示例和库模块,那么我的项目就会出现问题而根本无法编译.

有没有人遇到过这样的问题?怎么做以及分叉库的正确方法是什么?

eclipse git android android-studio android-gradle-plugin

6
推荐指数
1
解决办法
710
查看次数

无尽的Gridview

我看过很多无尽列表的实现.其中一个是https://github.com/commonsguy/cwac-endless

他们都使用listviews.而且所有这些只是在列表中添加另一行.但是当我们考虑Gridview(就像在Google Play商店中)并将加载视图添加为网格中的另一个项目时,它看起来很难看.我怎样才能在Play商店中实现同样的目标?

android commonsware-cwac

5
推荐指数
2
解决办法
1万
查看次数

设置imeActionLabel时,EditText输入法操作无效

我有一个带有imeoptionsas 的Edittext actiongo.当按下软键盘输入按钮时,我触发了我的事件.

mModelId.setOnEditorActionListener(new OnEditorActionListener() {
        @Override
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
            boolean handled = false;
           // if (event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
            if (actionId == EditorInfo.IME_ACTION_GO) {

                id = mModelId.getText().toString();
                System.out.println("Model id in Edittext:-"+ id);
                Toast.makeText(getActivity(), "You entered "+id, Toast.LENGTH_LONG).show();
                System.out.println("Before Call Volley");
                callVolley();
                handled = true;
            }
            return handled;
        }
    });
Run Code Online (Sandbox Code Playgroud)

一切正常,但是当我添加actionlabel来输入密钥时,事件没有触发. mModelId.setImeActionLabel("Search Model", KeyEvent.KEYCODE_ENTER);.可能是什么问题?

android android-edittext imeoptions

5
推荐指数
1
解决办法
6379
查看次数

在Android中的Multichoice AlertDialog中设置复选框状态

以下是我的代码 AlertDialog.Builder

    final String[] values = new String[] {"Select All", "Android", "ios", "windows", "Blackberry"};
    final ArrayList<String> selecteditems = new ArrayList<String>();
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("Select your favorite OS");
      builder.setMultiChoiceItems(values, null , new DialogInterface.OnMultiChoiceClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which, boolean isChecked) {

            if (isChecked) {
                selecteditems.add(String.valueOf(which));

            } else {

                selecteditems.remove(Integer.valueOf(which));
            }
        }
    })
    .setPositiveButton("OK", new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();

        }
    })
    .setNegativeButton("Cancel", new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, …
Run Code Online (Sandbox Code Playgroud)

checkbox android android-alertdialog

5
推荐指数
1
解决办法
3284
查看次数

使用Volley with JsonObjectRequest时无法从PHP获取参数

我正在使用Volley框架和JsonObjectRequest请求.我在用

JsonObjectRequest loginRequest = new JsonObjectRequest(b.toString(), params,
        new Listener<JSONObject>() {},
                    new Response.ErrorListener() {});
Run Code Online (Sandbox Code Playgroud)

params变量包含参数,它是一个JSONObject.

问题是我无法在PHP代码中访问任何这些变量.$ _POST或$ _REQUEST变量什么都没给我.

我也尝试过类似下面的东西,但没有运气.

$data = json_decode(file_get_contents("php://input"));
Run Code Online (Sandbox Code Playgroud)

php android json

3
推荐指数
1
解决办法
1480
查看次数

在Chrome中运行的Android应用中使用MEDIA硬件按钮

我已经使用ARC Welder在Chrome中成功运行了我的应用程序.我想在我的应用程序中使用MacBook上的播放/暂停按钮.

我的应用程序通常在Android中响应媒体按钮,如下所示.它正在开发Google电视Android电视.但是没有使用Chrome ARC.

我还响应空间并输入按钮,他们正在完美地使用Chrome ARC.

这是我在我的代码中使用的代码Activity:

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    switch (keyCode) {
        case KeyEvent.KEYCODE_MEDIA_PLAY:
        case KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE:
        case KeyEvent.KEYCODE_MEDIA_PAUSE:
        case KeyEvent.KEYCODE_SPACE:
        case KeyEvent.KEYCODE_ENTER:
        case KeyEvent.KEYCODE_NUMPAD_ENTER:
        case KeyEvent.KEYCODE_DPAD_CENTER:
            playPause();
            return true;
        case KeyEvent.KEYCODE_MEDIA_STOP:
            sendOrderedBroadcast(BaseNotificationService.STOP_INTENT, null);
            return true;
        default:
            return super.onKeyUp(keyCode, event);
    }
}
Run Code Online (Sandbox Code Playgroud)

你觉得怎么办?可能吗?可以有一个解决方法来支持播放/暂停按钮吗?

android google-chrome google-chrome-arc

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