小编Bra*_*313的帖子

尝试访问Android中的联系人时拒绝权限

我试图访问设备上的联系人,然后在列表中显示它们,但是当我尝试使用游标访问它们时,我收到一条错误,我错过了READ_CONTACTS的权限,但我已经在AndroidManifest中授予了权限.XML

我访问联系人的代码:

public void setupCursor() {
    Cursor cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null);

    while (cursor.moveToNext()) {
        String name = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
        String number = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
        Toast.makeText(this, name + ": " + number, Toast.LENGTH_SHORT).show();
    }
    cursor.close();
}
Run Code Online (Sandbox Code Playgroud)

AndroidManifest.xml中

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="io.github.brady131313.textback" >

<uses-sdk android:minSdkVersion="15" android:targetSdkVersion="21"/>

<uses-permission android:name="ANDROID.PERMISSION.READ_CONTACTS"/>

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".ActivityMainSettings"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity
        android:name=".ActivityContactSelect"
        android:label="Select Contacts">
    </activity>

</application>


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

错误日志

05-17 17:12:41.544  20202-20202/io.github.brady131313.textback E/AndroidRuntime? …
Run Code Online (Sandbox Code Playgroud)

java permissions android contacts

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

存储int []和String []的Android领域

有没有办法存储int []和String [],除了创建一个包含这些的新对象,然后将其存储在realmList中

我有一个对象,它接受String,int []和String []的参数.你不能在领域中存储int []和String [],所以我创建了一个对象

public class Workouts extends RealmObject {

    private String workout;

    public Workouts() {

    }

    public Workouts(String workout) {
        this.workout = workout;
    }

    public String getWorkout() {
        return workout;
    }

    public void setWorkout(String workout) {
        this.workout = workout;
    }
}
Run Code Online (Sandbox Code Playgroud)

public class Multiplier extends RealmObject {

    private int multiplier;

    public Multiplier() {

    }

    public Multiplier(int multiplier) {
        this.multiplier = multiplier;
    }

    public int getMultiplier() {
        return multiplier;
    }

    public void setMultiplier(int multiplier) { …
Run Code Online (Sandbox Code Playgroud)

java arrays android realm

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

由于null对象引用,无法向RealmList添加新对象

我必须使用realm对象,一个是带有两个字符串和一个布尔值的基本RealmObject,另一个是该对象的RealmList,以便于访问.当我尝试从我的ContactBook实例获取列表并添加新对象时,我尝试在空对象引用上调用虚方法.但是,我能够获得联系簿的大小,以及联系人的数量,因此这些不是空的.

类我在哪里尝试添加新对象

public void viewSetup() {
    setContentView(R.layout.activity_contacts);
    ButterKnife.inject(this);
    Realm.deleteRealmFile(this);
    realm = Realm.getInstance(this);
    results = realm.where(ContactBook.class).findAll();
    if (toolbar != null) {
        setSupportActionBar(toolbar);
    }

    if (results.size() == 0) {
        realm.beginTransaction();
        ContactBook contactBook = realm.copyToRealm(new ContactBook());
        realm.commitTransaction();
    }
}

public void setupCursor() {
    Cursor cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null);
    ContactBook contactBook = results.first();

    realm.beginTransaction();
    while (cursor.moveToNext()) {
        String name = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
        String number = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
        if (contactBook.getContacts().where().equalTo("name", name).findAll().size() == 0 && contactBook.getContacts().where().equalTo("number", number).findAll().size() == 0) {
            contactBook.getContacts().add(new Contact(name, number, false));
        } …
Run Code Online (Sandbox Code Playgroud)

java android realm

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

Firebase无法保存任何数据

我试图在firebase中进行一个简单的测试并保存包含字符串和布尔值的hashmap,但是我无法保存数据,它永远不会被推送. http://hastebin.com/qucocuqexe.cs

java firebase

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

标签 统计

java ×4

android ×3

realm ×2

arrays ×1

contacts ×1

firebase ×1

permissions ×1