小编pio*_*rpo的帖子

从Android应用程序获取证书指纹

如何从这个应用程序内部获取应用程序证书的指纹?我想检查应用程序是否使用我自己的证书签名,或者是否重新打包/黑客攻击.

我在这里找到了部分解决方案:从Android应用程序获取证书.现在的问题是:如何检查证书的指纹.

android

33
推荐指数
2
解决办法
3万
查看次数

如何从java代码中读取自定义维度属性

我制作了自定义组件,只是将几个TextView放在一起.现在我希望能够直接从代码启动我的自定义控件,为每个电视独立传递文本大小

我的属性定义:

<resources>
    <declare-styleable name="BasicGauge">
        <attr name="valueTextSize" format="dimension" />
        <attr name="titleTextSize" format="dimension" />
        <attr name="unitsTextSize" format="dimension" />
    </declare-styleable>
</resources>
Run Code Online (Sandbox Code Playgroud)

组件的示例初始化:

<pl.com.digita.BikeComputerUi.customviews.BasicGauge
    android:id="@+id/basicGauge1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:padding="10dp"
    valueTextSize="40sp">

</pl.com.digita.BikeComputerUi.customviews.BasicGauge>
Run Code Online (Sandbox Code Playgroud)

我如何尝试在组件的构造函数中读取这些属性:

final int N = typedArray.getIndexCount();
for (int i = 0; i < N; i++) {
    int attribute = typedArray.getIndex(i);
    switch (attribute) {
        case R.styleable.BasicGauge_valueTextSize:
            valueTextSize = typedArray.getString(attribute);
            break;
        case R.styleable.BasicGauge_titleTextSize:
            titleTextSize = typedArray.getString(attribute);
            break;
        case R.styleable.BasicGauge_unitsTextSize:
            unitsTextSize = typedArray.getString(attribute);
            break;
    }
    typedArray.recycle();
}
Run Code Online (Sandbox Code Playgroud)

问题: 创建后,我的所有值仍为空.40sp正是我想要的值.

android android-layout android-resources

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

更改uitextview超链接颜色

我正在使用UITextView,我想更改我在此组件中使用的超链接的颜色.例如,如果UITextView显示www.gmail.com,则显示为蓝色.我想改变那种颜色.

uitextview ios

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

Android studio省略了断点

当我尝试使用android studio调试应用程序时,我在IDE中设置了一些断点,在启动调试器后,我得到了每个断点(在气球中)的信息:

Warning : No executable code found at line ...
Run Code Online (Sandbox Code Playgroud)

当应用程序到达第一个BP时,看起来就会显示该消息.要清楚 - 我在这些行中有可执行代码,如String s ="asd";

android android-studio

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

禁用LINT检查的副作用是什么?

实际上,我的应用程序没有运行,所以我点击"禁用检查",之后,它开始运行Swiftly.现在,应用程序中是否存在任何即将出现的问题?

在此输入图像描述

java android lint manifest

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

操作栏菜单显示屏幕

我有旧式菜单的应用程序.将主题更改为Holo并将目标SDK版本切换为14后,软菜单按钮消失(没关系)但使用操作栏上的菜单按钮显示大部分屏幕外的文本菜单,如附图所示.你有任何想法如何解决这个问题?

操作栏错误

我解决了这个问题.问题在于清单参数:

   <supports-screens
        android:anyDensity="false"
        android:largeScreens="true"
        android:normalScreens="true"
        android:xlargeScreens="true"
        android:resizeable="true"
        android:smallScreens="true" />
Run Code Online (Sandbox Code Playgroud)

将anyDenisity更改为true后,此问题已经消失.

android android-actionbar

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

活动目录和 Firebase

我正在使用 Firebase 向我的应用程序提供用户身份,该应用程序在 GAE 上运行并且可通过网络浏览器访问并使用 Firebase 安全端点。

该应用程序将作为 SaaS 解决方案交付给业务用户,所以我想知道是否有可能向用户提供 SSO。

active-directory single-sign-on firebase-authentication

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

改造2和Spring RestController

我想创建一个包含3个模块的项目:

  • 移动应用程序(改型?)
  • Spring端点(@RestControler)
  • Interface (contains communication entities and rest methods definition)

Data classes are easy part as I can use this same parser on both ends, or just don't use any gson / jackson / *son annotations at all.

The problem is:

How to define Retrofit interface and Spring in a way that do not require manual synchronization of both files?

Retrofit:

public interface GitHubService {
  @GET("users/{user}/repos")
  Call<List<Repo>> listRepos(@Path("user") String user);
}
Run Code Online (Sandbox Code Playgroud)

Spring:

public class GitHubService {
  @RequestMapping(value="users/{user}/repos", mehod=GET) …
Run Code Online (Sandbox Code Playgroud)

java spring-mvc retrofit2

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

生成的类未找到

使用Dagger2和Kotlin时,当存在其他调用代码时,我的组件类实现不会生成.如果不存在调用代码,则生成实现.

例如

val comp = DaggerMyComponent.create()
Run Code Online (Sandbox Code Playgroud)

导致构建失败,DaggerMyComponent未生成,因此无法找到

// val comp = DaggerMyComponent.create()
Run Code Online (Sandbox Code Playgroud)

DaggerMyComponent班是生成和磁盘上被观看,生成成功.

我使用Kotlin beta-1103尝试过Dagger 2.0.1,2.0.2,2.1-Snapshot.如果需要,我可以发布我的gradle文件,源代码或堆栈跟踪.

有没有人遇到过这个问题?

kotlin dagger-2

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

FragmenManager替换使叠加

我正在使用supportlib v4来实现master-detail流程.

问题:"details"片段的新实例覆盖第一个(xml创建)而不是替换它.

我的活动布局是:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    tools:context=".TrackListActivity" >

    <fragment
        android:id="@+id/fragmentList"
        android:name="pl.com.digita.BikeComputerUi.TrackList.TrackListFragment"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1" />

    <fragment
        android:id="@+id/fragmentTrack"
        android:name="pl.com.digita.BikeComputerUi.TrackList.TrackInfoFragment"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="2" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

点击后调用的方法:

private void showDetails(long trackId){
    View fragmentContainer = getActivity().findViewById(R.id.fragmentTrack);
    TrackInfoFragment trackInfoFragment =  TrackInfoFragment.newInstance(trackId);
    FragmentManager fragmentManager =  getFragmentManager();
    fragmentManager.beginTransaction().replace(fragmentContainer.getId(), trackInfoFragment).commit();

    }
Run Code Online (Sandbox Code Playgroud)

android android-fragments

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

无法使用Gradle和Kotlin编译项目

在将kotlin-gradle-plugin从1.1.4-3升级到1.1.50(或51)以及所有与Kotlin相关的库之后,我在尝试导入gradle文件时遇到如下错误:

Unable to build Kotlin project configuration
Details: java.lang.reflect.InvocationTargetException: null
Caused by: java.lang.NoSuchMethodError: kotlin.reflect.jvm.internal.KClassImpl.getData()Lkotlin/reflect/jvm/internal/ReflectProperties$LazyVal;
Run Code Online (Sandbox Code Playgroud)

使用旧版本的插件(1.1.4-3)时编译工作正常.

完整的gradle文件:

apply plugin: 'war'
apply plugin: 'com.google.cloud.tools.appengine'
apply plugin: 'kotlin'
apply plugin: 'kotlin-kapt'
apply plugin: "net.ltgt.apt"
apply plugin: 'idea'
apply plugin: 'org.jetbrains.dokka'




def daggerVersion = "2.11"

sourceCompatibility = '1.8'
targetCompatibility = '1.8'

buildscript {
    repositories {
        mavenCentral()
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    dependencies {
        classpath "org.jetbrains.dokka:dokka-gradle-plugin:0.9.9"
        classpath 'com.google.cloud.tools:appengine-gradle-plugin:1.3.2'
        classpath "net.ltgt.gradle:gradle-apt-plugin:0.3"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

    }
}

dependencies {
    compile "com.google.appengine:appengine-api-1.0-sdk:${appengineVersion}"
    compile "com.google.appengine:appengine-endpoints-deps:${appengineVersion}"

    compile "com.google.dagger:dagger:${daggerVersion}"

    compile 'com.google.endpoints:endpoints-framework:2.0.5' …
Run Code Online (Sandbox Code Playgroud)

gradle kotlin

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

如何使用Class作为泛型类型标记

我有我的方法:

myMethod(Class class){}
Run Code Online (Sandbox Code Playgroud)

我想传递给所有降序类的MyClass方法,因此将其更改为:

myMethod(Class<MyClass> class){}
Run Code Online (Sandbox Code Playgroud)

并致电:

myMethod(MyOtherClassExtendingMyClass.class)
Run Code Online (Sandbox Code Playgroud)

然后我有编译错误:

The method myMethod(Class<MyClass>) in the type XXX is not applicable
for the arguments (Class<MyOtherClassExtendingMyClass>)
Run Code Online (Sandbox Code Playgroud)

如何确保只允许MyClass及其所有降序类作为此方法的参数?

java

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

无法从匿名类访问外部类

我无法从匿名内部访问外部方法

class MyClass()
{
    fun doSomeStuff()
    {
       for (brandView in holder.brandImages)
       {
           brandView.onClick {
               if (brandView.brandId != null)
               {
                   notifyStateChanged()
               }
           }
       }
    }
    fun notifyStateChanged()
    {
        print("something")
    }
}
Run Code Online (Sandbox Code Playgroud)

我有编译时错误:

Error:(46, 31) org.jetbrains.kotlin.codegen.CompilationException: Back-end (JVM) Internal error: Don't know how to generate outer expression for class <closure-BrandsBarView$1>
Cause: Don't know how to generate outer expression for class <closure-BrandsBarView$1>
File being compiled and position: (46,31) in C:/Users/piotr/IdeaProjects/MerciIt/app/src/main/java/pl/com/digita/merciit/app/ui/controls/colorswitcher/brandsbar/BrandsBarView.kt
PsiElement: {
                if (brandView.brandId != null)
                {
                    notifyStateChanged()
                    //brandView.setTicked(!brandView.isTicked)
                }
            }
The root …
Run Code Online (Sandbox Code Playgroud)

android kotlin

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