为了账号安全,请及时绑定邮箱和手机立即绑定

最新的AS 版本运行代码出错 权限给了也不对?

MainActivity
package com.superxingyun.contentproviderdemo2;

import android.content.ContentResolver;
import android.content.ContentUris;
import android.content.ContentValues;
import android.net.Uri;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.provider.ContactsContract.CommonDataKinds.Phone;
import android.provider.ContactsContract.Data;
import android.provider.ContactsContract.RawContacts;
import android.provider.ContactsContract.CommonDataKinds.StructuredName;
import android.support.v7.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ContentResolver cr = getContentResolver();

        //向联系人中插入一行数据
        ContentValues values = new ContentValues();
        Uri uri = cr.insert(RawContacts.CONTENT_URI, values);
        //解析uri
        Long raw_contact_id = ContentUris.parseId(uri);
        values.clear();
        //插入人名
        values.put(StructuredName.RAW_CONTACT_ID, raw_contact_id);
        values.put(StructuredName.DISPLAY_NAME, "劫");
        values.put(StructuredName.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE);
        uri = cr.insert(Data.CONTENT_URI, values);

        //插入电话信息
        values.clear();
        values.put(Phone.RAW_CONTACT_ID, raw_contact_id);
        values.put(Phone.NUMBER, "18989846103");
        values.put(Phone.MIMETYPE, Phone.CONTENT_ITEM_TYPE);
        uri = cr.insert(Data.CONTENT_URI, values);









    }
}

AndroidManifest.xnl
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.superxingyun.contentproviderdemo2">

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

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

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

</manifest>

http://img1.sycdn.imooc.com//57da7f1900017b1217900610.jpg

正在回答

3 回答

if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_CONTACTS) != PackageManager.PERMISSION_GRANTED) {
    ActivityCompat.requestPermissions(this,
            new String[]{Manifest.permission.READ_CONTACTS}, 1);
} else {
}
//加上这个就可以了
0 回复 有任何疑惑可以回复我~

没有给权限。

0 回复 有任何疑惑可以回复我~

可到设置里面给你的app权限(6.0系统会遇到这种情况)你可以试下

0 回复 有任何疑惑可以回复我~
#1

月满轩尼诗 提问者

我虚拟机运行的 你的意思是真机运行吗
2016-09-17 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第二门课(第3季)
  • 参与学习       74912    人
  • 解答问题       420    个

手势识别、数据存储和4大组件,让你牢牢掌握之前的基础知识点

进入课程

最新的AS 版本运行代码出错 权限给了也不对?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信