0

Я смущен о разделе разрешений для уведомлений IBM MobileFirst GMS Push, найденных здесь. (Раздел 5)IBM MobileFirst - собственное приложение для Android, добавляющее разрешения push-манифеста

https://developer.ibm.com/mobilefirstplatform/documentation/getting-started-7-0/notifications/push-notification-native-android-applications/

Я добавил все эти разрешения дословно, но им получает ошибку говоря я havn't добавил явные разрешения. Нужно ли мне изменять имена пакетов в этих разрешениях?

Является ли эта деятельность встроенной?

<activity 
android:name="com.worklight.androidnativepush.AndroidNativePush" 
android:label="@string/app_name" 
android:theme="@android:style/Theme.Black.NoTitleBar" 
android:launchMode="singleTask"> 

Здесь ошибка LogCat

07-25 23:24:48.285 17146-17146/? E/AndroidRuntime﹕ FATAL EXCEPTION: main 
Process: com.companyname.hitch.mobilefirsttestapp, PID: 17146 
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.companyname.hitch.mobilefirsttestapp/com.companyname.hitch.mobilefirsttestapp.push.PushActivity}: java.lang.RuntimeException: Your manifest is not allowed to work with push. Android Manifest Error: Missing permission in manifest: com.companyname.hitch.mobilefirsttestapp.permission.C2D_MESSAGE 
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2184) 
     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233) 
     at android.app.ActivityThread.access$800(ActivityThread.java:135) 
     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196) 
     at android.os.Handler.dispatchMessage(Handler.java:102) 
     at android.os.Looper.loop(Looper.java:136) 
     at android.app.ActivityThread.main(ActivityThread.java:5001) 
     at java.lang.reflect.Method.invokeNative(Native Method) 
     at java.lang.reflect.Method.invoke(Method.java:515) 
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785) 
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601) 
     at dalvik.system.NativeStart.main(Native Method) 
Caused by: java.lang.RuntimeException: Your manifest is not allowed to work with push. Android Manifest Error: Missing permission in manifest: com.companyname.hitch.mobilefirsttestapp.permission.C2D_MESSAGE 
     at com.worklight.wlclient.api.WLPush.<init>(WLPush.java:180) 
     at com.worklight.wlclient.api.WLClient.getPush(WLClient.java:957) 
     at com.companyname.hitch.mobilefirsttestapp.push.PushActivity.onCreate(PushActivity.java:19) 
     at android.app.Activity.performCreate(Activity.java:5231) 
     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2148) 
     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233) 
     at android.app.ActivityThread.access$800(ActivityThread.java:135) 
     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196) 
     at android.os.Handler.dispatchMessage(Handler.java:102) 
     at android.os.Looper.loop(Looper.java:136) 
     at android.app.ActivityThread.main(ActivityThread.java:5001) 
     at java.lang.reflect.Method.invokeNative(Native Method) 
     at java.lang.reflect.Method.invoke(Method.java:515) 
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785) 
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601) 
     at dalvik.system.NativeStart.main(Native Method) 
+0

Почему вы не включаете ошибку, которую получаете, а также файл манифеста? –

+0

Эй, Идан, работая над ним. Это на отдельной рабочей станции. Один момент –

ответ

0

При создании гибридного приложения с Android среды MobileFirst основе, MobileFirst будет создавать его на основе шаблона с набором предопределенных разрешений и видов деятельности.

В собственном приложении вы создаете его. MobileFirst предоставляет вам только SDK и набор инструкций по интеграции.

Деятельность, о которой вы говорили в вопросе (взята на странице руководства), - это действие примера приложения, включенного в учебник. В AndroidManifest.xml вашего собственного приложения вы увидите имя своего приложения вместо «androidnativepush» (или, скорее, его нужно создать).

Не забудьте использовать «androidnativepush» в любом месте, если это ваше имя приложения.

+0

Похоже, что в теге «категория» внутри фильтра намерений в приемнике используется «com.worklight.androidnativepush». Я предполагаю, что это нужно изменить и с моим именем пакета? –

+0

Да. В любом месте, где говорится, что «androidnativepush» следует заменить собственным именем приложения. Я отредактировал учебник, чтобы прояснить это. –

Смежные вопросы