小编Aru*_*ruN的帖子

在Android上以编程方式获取来电号码

我正在尝试使用 android studio 上的广播接收器获取来电信息。以下是我尝试过的方法:

<receiver android:name=".receivers.IncomingCalls">
            <intent-filter>
                <action android:name="android.intent.action.PHONE_STATE" />
            </intent-filter>
        </receiver>
Run Code Online (Sandbox Code Playgroud)

关于这个接收者的意图我尝试过:

方法一:

incnumber=intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);
Run Code Online (Sandbox Code Playgroud)

方法二:

final String state1 = intent.getStringExtra(TelephonyManager.EXTRA_STATE);
        telephony.listen(new PhoneStateListener(){
            @Override
            public void onCallStateChanged(int state, final String incomingNumber) {
                super.onCallStateChanged(state, incomingNumber);
                incnumber=incomingNumber;
            }
        },PhoneStateListener.LISTEN_CALL_STATE);
Run Code Online (Sandbox Code Playgroud)

方法三:

incnumber=intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);
Run Code Online (Sandbox Code Playgroud)

所有这三个方法都返回空 incnumber。

顺便说一句,我正在 android 派上运行这个项目,请帮助我。

android broadcastreceiver telephonymanager

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

可扩展的 RecyclerView Android Studio 示例

大家好,我正在尝试使用thoughtbot库找到一个很好的示例android studio项目,用于可扩展的recyclerview我找不到,请帮帮我

android android-studio android-recyclerview expandablerecyclerview

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

Android Studio 3.2.1:加载旧项目后,布局预览不适用于所有项目

我需要签出一个旧项目,该项目需要我下载构建工具版本23.0.0的某些代码,然后将其加载到更新的android studio中。

现在,在加载旧项目之前,布局文件在我设计的任何正常工作的项目或新项目上都不会为我显示任何预览,这是在启动新项目时出现的错误:

NOTE: One or more layouts are missing the layout_width or layout_height attributes. These are required in most layouts.
Run Code Online (Sandbox Code Playgroud)

找不到以下类别:
编辑XML)提示:尝试构建项目。提示:尝试刷新布局。

渲染问题:未能加载未知错误的AppCompat ActionBar

无法实例化一个或多个类无法实例化
以下类:-android.support.v7.app.WindowDecorActionBar(打开类,显示异常,清除缓存)提示:在自定义视图中使用View.isInEditMode()跳过代码或在IDE中显示时显示示例数据。如果这是意外错误,您也可以尝试构建项目,然后手动刷新布局。

该图在工具:context =“。MainActivity”中将MainActivity显示为未解决的类

我尝试解决此问题的方法:

  1. 使缓存无效并重新启动
  2. 清理并重建项目
  3. 将sdk版本从28.0.0更改为27.1.1(在加载旧项目之前,我一直在使用sdk 28.0.0进行项目开发,没有任何问题
  4. 重新安装了整个android studio,删除了SDK以外的缓存
  5. 强制刷新布局
  6. 在设置中将构建工具版本设置为28.0.3

build.gradle(模块:应用):

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "<Name Removed>"
    minSdkVersion 28
    targetSdkVersion 28
    versionCode 1
    versionName "1.0"
       testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
buildToolsVersion '28.0.3' …
Run Code Online (Sandbox Code Playgroud)

xml layout android preview android-studio

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