10

Tôi đang cố gắng tích hợp Nhắn tin thiết bị Amazon với Android Studio. Đầu tiên tôi theo sau (integrating-your-app-with-adm). Khi tôi gọiNhắn tin thiết bị Amazon Stub! Android Studio

ADM adm = new ADM(getActivity()); 
if (adm.isSupported()) { 
    // ... 
} 

Có đầu ra này trên logcat:

E/AndroidRuntime (24.472): java.lang.RuntimeException: Stub!

E/AndroidRuntime (24.472):. Tại com.amazon.device.messaging.ADM (Unknown Source)

Vì vậy, tôi đi theo Amazon (Integrating Amazon Libraries with Android Studio) với kết quả tương tự.

Sau đó, tôi đã thử thisthis mà không thành công.

My AndroidManifest.xml trông như thế này:

... 
<uses-permission android:name="de.mypackage.permission.RECEIVE_ADM_MESSAGE" /> 
<uses-permission android:name="com.amazon.device.messaging.permission.RECEIVE" /> 
<permission android:name=".permission.RECEIVE_ADM_MESSAGE" android:protectionLevel="signature" /> 
... 
<application 
    android:name=".MyPackageApplication" 
    android:allowBackup="true" 
    android:allowClearUserData="true" 
    android:hardwareAccelerated="false" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme"> 
... 
    <service android:name=".service.ADMNotificationService" android:exported="false" /> 

    <amazon:enable-feature android:name="com.amazon.device.messaging" android:required="true" /> 

    <receiver android:name=".service.ADMNotificationService$MessageAlertReceiver" 
     android:permission="com.amazon.device.messaging.permission.SEND"> 
    <intent-filter> 
      <action android:name="com.amazon.device.messaging.intent.REGISTRATION" /> 
      <action android:name="com.amazon.device.messaging.intent.RECEIVE" /> 
      <category android:name="de.mypackage"/> 
     </intent-filter> 
    </receiver> 
... 
</application> 

Các build.gradle địa phương trông như thế này:

... 

dependencies { 
    ... 
    provided files('libs/amazon-device-messaging-1.0.1.jar') 
    ... 
} 

bạn có thể có một ý tưởng?

+0

Bạn có chạy ứng dụng trên thiết bị Kindle không? –

+0

Có! kindle cháy hdx. – Kartenspieler

+0

bạn có thể đính kèm tệp build.gradle đầy đủ hoặc ít nhất là phần flavor/buildConfig và phần phụ thuộc đầy đủ không? –

Trả lời

10

Bạn có thể có một cái gì đó dọc theo các đường này trong phần phụ thuộc của bạn:

compile fileTree(include: ['*.jar'], dir: 'libs') 

Điều này có nghĩa bạn đang biên soạn tất cả các lọ trong libs thư mục vào ứng dụng của bạn. Vì vậy, có lẽ câu trả lời cho biết chuyển đổi compile thành provided hoạt động, nhưng ngoài provided bạn vẫn giữ compile cho tất cả các thư trong thư mục libs.

Bạn cần phải xóa dòng fileTree và bao gồm bất kỳ lọ nào bạn có ở đó (trừ amazon-device-messaging-1.0.1.jar) theo cách thủ công.

0

Giải pháp khắc phục sự cố là chỉnh sửa tệp build.gradle (Mô-đun: ứng dụng).

  1. Tháo dòng: biên dịch fileTree (bao gồm: [ ' .jar'], dir: 'libs') *
  2. Chuyển đến libs thư mục và tìm hiểu tất cả các tập tin jar bạn cần
  3. Bao gồm từng cái một để biên dịch. Ví dụ, biên dịch file ('libs/ePOS2.jar')
  4. Thêm ADM jar tập tin cung cấp file ('libs/amazon-thiết bị-tin nhắn-1.0.1.jar')
  5. Xây dựng dự án
Các vấn đề liên quan