0

I used the below code

var findus = Ti.Contacts.getPeopleWithName('john');

and the error i got is

uncaught error: permission denial : reading com.android.providers.contacts.contactsprovider2 uri content://com.android.contacts/data from pid=277, uid=10045 requires android.permission. READ_CONTACTS

But i have placed the below lines in tiapp.xml

  <android xmlns:android="http://schemas.android.com/apk/res/android"> <manifest>
  <uses-   permission android:name="com.get.permission.READ_CONTACTS"
  android:protectionLevel="signature"/> </manifest> </android>

Android version : 2.2 sdk : 1.8.2 os

please help on this issue.........

4

2 に答える 2

2

承認をリクエストしていないようです。

連絡先にアクセスする前に承認をリクエストしてください。次の例は、Titaniumドキュメント(http://docs.appcelerator.com/titanium/latest/#!/api/Titanium.Contacts)からのものです。

var performAddressBookFunction = function(){
    var findus = Ti.Contacts.getPeopleWithName('john');
};
var addressBookDisallowed = function(){alert('Sorry');};
if (Ti.Contacts.contactsAuthorization == Ti.Contacts.AUTHORIZATION_AUTHORIZED){
    performAddressBookFunction();
} else if (Ti.Contacts.contactsAuthorization == Ti.Contacts.AUTHORIZATION_UNKNOWN){
    Ti.Contacts.requestAuthorization(function(e){
        if (e.success) {
            performAddressBookFunction();
        } else {
            addressBookDisallowed();
        }
    });
} else {
    addressBookDisallowed();
}
于 2013-03-04T09:04:52.703 に答える
1

権限の名前は、「com.get.permission.READ_CONTACTS」ではなく「android .permission.READ_CONTACTS」です。

tiapp.xml で次のことを試してください。

<android xmlns:android="http://schemas.android.com/apk/res/android">
  <manifest>
    <uses-permission android:name="android.permission.READ_CONTACTS" android:protectionLevel="signature"/>
  </manifest>
</android>
于 2014-01-25T23:01:36.853 に答える