小编Ran*_*ngh的帖子

Android - 手机内置的开发者工具 - "显示Cpu用法"选项含义是什么?

Android手机会向用户显示开发人员工具和选项列表(在"设置">"开发人员"下),并可显示在用户的屏幕上.有各种数据显示如下:6.002/6.48/8.23,下一行显示在后台运行的一些服务.这背后的概念是什么?

android cpu-usage

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

java.lang.NoClassDefFoundError:失败的解析:Lio/realm/internal/SharedRealm $ Durability

我正在尝试使用Realm创建一个演示应用程序,使用Facebook的stetho浏览default.realm.我每次尝试使用chrome:// inspect> Resources> Web SQL> default.realm在google chrome上打开default.realm时出现此错误

这就是我所做的.

的build.gradle

repositories {
    maven {
        url 'https://github.com/uPhyca/stetho-realm/raw/master/maven-repo'
    }
}

dependencies {
    ...
    compile 'com.uphyca:stetho_realm:2.0.0'
    compile 'com.facebook.stetho:stetho:1.4.1'
}
Run Code Online (Sandbox Code Playgroud)

我的应用类

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
RealmConfiguration realmConfiguration = new RealmConfiguration.Builder(this).build();
        Realm.setDefaultConfiguration(realmConfiguration);

        Stetho.initialize(
                Stetho.newInitializerBuilder(this)
                        .enableDumpapp(Stetho.defaultDumperPluginsProvider(this))
                        .enableWebKitInspector(Stetho.defaultInspectorModulesProvider(this))
                        .build());
    }
}
Run Code Online (Sandbox Code Playgroud)

应用程序崩溃时出现此错误:

E/AndroidRuntime: FATAL EXCEPTION: StethoWorker-main-304
                  Process: example.com.demoapp, PID: 12830
                  java.lang.NoClassDefFoundError: Failed resolution of: Lio/realm/internal/SharedRealm$Durability;
                      at com.uphyca.stetho_realm.RealmPeerManager.openSharedRealm(RealmPeerManager.java:136)
                      at com.uphyca.stetho_realm.RealmPeerManager.openSharedRealm(RealmPeerManager.java:128)
                      at com.uphyca.stetho_realm.RealmPeerManager.getDatabaseTableNames(RealmPeerManager.java:55)
                      at com.uphyca.stetho_realm.Database.getDatabaseTableNames(Database.java:124)
                      at …
Run Code Online (Sandbox Code Playgroud)

android realm realm-browser

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

Android:在服务类中读取NFC标记

我正在开发一个应用程序,我需要读取存储在NFC标签中的数据,通过数据我的意思是简单的整数值,如0,1,2,3等等.从NFC读取数据的功能在Activity类中工作正常但我需要在后台运行应用程序,所以即使应用程序没有在前台运行,我也可以从NFC读取数据.所以我编写了一个服务类,并将函数从Activity移动到服务类.但它没有用.

这是"MainActivity.java"

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        startService(new Intent(this, MyService.class));
    }
Run Code Online (Sandbox Code Playgroud)

startService(new Intent(this,MyService.class));
此行启动服务类.

Service类是"MyService.java"

public class MyService extends Service {

    private NfcAdapter mNfcAdapter;
    private PendingIntent mNfcPendingIntent;
    private IntentFilter[] mReadTagFilters;

    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }

    @Override
    public void onCreate() {
        super.onCreate();
         mNfcAdapter = NfcAdapter.getDefaultAdapter(this);
         mNfcPendingIntent = PendingIntent.getActivity(this, 0, new
         Intent(this,
         getClass()).addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP
         | Intent.FLAG_ACTIVITY_CLEAR_TOP), 0); 
         IntentFilter ndefDetected = new IntentFilter(
         NfcAdapter.ACTION_NDEF_DISCOVERED);
         ndefDetected.addDataScheme("http");
         IntentFilter techDetected = new IntentFilter(
         NfcAdapter.ACTION_TECH_DISCOVERED);    
         mReadTagFilters = new IntentFilter[] { ndefDetected, techDetected …
Run Code Online (Sandbox Code Playgroud)

android nfc android-service

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

使用Mockito进行单元测试改造API调用-ArgumentCaptor

如果我的问题看起来重复,请原谅我,但我没有得到如何测试改造API调用的信息。 在应用程序级别的build.gradle

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile("com.android.support.test.espresso:espresso-core:$rootProject.ext.expressoVersion", {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile "com.android.support:appcompat-v7:$rootProject.ext.supportLibraryVersion"
    compile "com.jakewharton:butterknife:$rootProject.ext.butterKnifeVersion"
    annotationProcessor "com.jakewharton:butterknife-compiler:$rootProject.ext.butterKnifeVersion"

    // Dependencies for local unit tests
    testCompile "junit:junit:$rootProject.ext.junitVersion"
    testCompile "org.mockito:mockito-all:$rootProject.ext.mockitoVersion"
    testCompile "org.hamcrest:hamcrest-all:$rootProject.ext.hamcrestVersion"
    testCompile "org.powermock:powermock-module-junit4:$rootProject.ext.powerMockito"
    testCompile "org.powermock:powermock-api-mockito:$rootProject.ext.powerMockito"
    compile "com.android.support.test.espresso:espresso-idling-resource:$rootProject.ext.espressoVersion"

    // retrofit, gson
    compile "com.google.code.gson:gson:$rootProject.ext.gsonVersion"
    compile "com.squareup.retrofit2:retrofit:$rootProject.ext.retrofitVersion"
    compile "com.squareup.retrofit2:converter-gson:$rootProject.ext.retrofitVersion"
}
Run Code Online (Sandbox Code Playgroud)

项目级别的build.gradle具有此额外内容

//在一个地方定义版本

ext {
    // Sdk and tools
    minSdkVersion = 15
    targetSdkVersion = 25
    compileSdkVersion = 25
    buildToolsVersion = '25.0.2'

    supportLibraryVersion = '23.4.0'
    junitVersion = '4.12' …
Run Code Online (Sandbox Code Playgroud)

android mockito retrofit2

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

Android:从java脚本到java的回调函数

我创建了一个应用程序,我在其中使用 webview 并加载一个简单的静态 html 页面。我正在从活动调用 java 脚本函数,但我无法从 java 脚本调用函数。我尝试了几个链接,但没有奏效。
Javascript 回调函数传递给 Android
我无法从 javascript 调用 android 函数
这是我的代码。先感谢您。


活动_main.xml

<Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Call JavaScript Function"
        android:onClick="callJavaScript" />

<WebView
    android:id="@+id/myWebView"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" />
Run Code Online (Sandbox Code Playgroud)

索引.html

<html>
<head>
<script type="text/javascript">
        function displayMessage(){
            document.getElementById('test1').innerHTML = 'This is from java script.';
            Android.returnResult();
        }
    </script>
</head>
<body>
    <h1 id="test1">Hello World</h1>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

主要活动有以下两个功能。

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        myWebView = (WebView) this.findViewById(R.id.myWebView);
        myWebView.getSettings().setJavaScriptEnabled(true);
        myWebView.addJavascriptInterface(new JavaScriptHandler(this), "Android");
        myWebView.loadUrl("file:///android_asset/index.html");
    }

    public void callJavaScript(View view) {
        Log.v(null, …
Run Code Online (Sandbox Code Playgroud)

javascript java android

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

Jenkins-flutter:找不到命令

我正在尝试配置一个简单的启动项目。我正在从 GIT 中提取代码并尝试创建一个构建。在本地 Jenkins上出现此错误,

[Flutter-Starter] $ /bin/sh /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/jenkins102165218853380431.sh
/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/jenkins102165218853380431.sh: line 3: flutter: command not found
Build step 'Execute shell' marked build as failure
Finished: FAILURE
Run Code Online (Sandbox Code Playgroud)

我的执行外壳

#!/bin/sh

flutter build apk --debug
Run Code Online (Sandbox Code Playgroud)

Flutter 已安装并正在我的系统上运行。因为同样的命令正在 Studio 上为我创建 android 版本。

这是来自.bash_profile文件的环境。

...
export PATH=$PATH:/Users/rana.singh/Downloads/softwares/flutter/bin
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export PATH=$PATH:Library/Android/sdk/platform-tools/
Run Code Online (Sandbox Code Playgroud)

不知道出了什么问题。

jenkins flutter

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

Android:以编程方式获取设备名称

这是我试过的.

mTextView.setText("MODEL: "+android.os.Build.MODEL
                +"\nDEVICE: "+android.os.Build.DEVICE
                +"\nBRAND: "+android.os.Build.BRAND
                +"\nDISPLAY: "+android.os.Build.DISPLAY
                +"\nBOARD: "+android.os.Build.BOARD
                +"\nHOST: "+android.os.Build.HOST
                +"\nMANUFACTURER: "+android.os.Build.MANUFACTURER
                +"\nPRODUCT: "+android.os.Build.PRODUCT);
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我如何获得这些输出:
三星Galaxy S
三星笔记3
索尼Xperia z
索尼Xperai z1
三星大为

nexus它显示nexus 4nexus 7与索尼或三星不一样的情况.

android

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