當我嘗試將我的Android APP連接到BlueTooth打印機時,從不調用密鑰方法。我跟着推出SDK的:MyApplication中的方法永遠不會被調用
添加權限
初始化SDK中Application.onCreate()
公共無效的onCreate(){ super.onCreate(); WPXMain.init(this); }
Wnen我跑通過SDK提供的樣品,我可以看到日誌:
11月3日至29日:15:25.399 10820-10820/com.wpx.printer.sample d/WPXMain:初始化
下面是示例代碼:
public class MyApplication extends Application {
private List<Activity> list = new ArrayList<Activity>();
public void addActivity(Activity activity) {}
public void clearActivity(){
for(Activity activity : list){
if(activity != null && !activity.isFinishing()){
activity.finish();
}
}
}
@Override
public void onCreate() {
super.onCreate();
WPXMain.init(this);
}
public void exit() {
clearActivity();
System.exit(0);
android.os.Process.killProcess(android.os.Process.myPid());
}
}
然而,當我把WPXMain.init(本);到我自己的MyApplication中,我既不能看到init日誌,也不能使用SDK的任何功能。
我想這是因爲WPXMain.init(this);在MyApplication中未被調用。因爲如果它被調用,我應該看到init日誌。以下是SDK中的init代碼:
public static void init(Application app) {
init(app, false);
}
public static void init(Application app, boolean isBleModel) {
WPXUtils.log(TAG, "init");
WPXMain.Bean.wpx.filter.add("NP100");
if(app != null) {
WPXMain.Bean.wpx.isInit = true;
WPXMain.Bean.wpx.isBleModel = isBleModel;
WPXMain.Bean.wpx.app = app;
if(isBleModel) {
WPXMain.Bean.wpx.wblec = com.wpx.WPXBleControl.Bean.getInstance();
WPXMain.Bean.wpx.wblec.init(app);
} else {
WPXMain.Bean.wpx.wbc = com.wpx.WPXBluetoothControl.Bean.getInstance();
WPXMain.Bean.wpx.wbc.init(app);
regReceiver();
}
}
}
任何想法?感謝你們。
有你'Manifest'添加應用程序類? – mallaudin
[如何在我的清單文件中註冊應用程序類]可能的重複(http://stackoverflow.com/questions/13949666/how-to-register-application-class-in-my-manifest-file) –
@mallaudin謝謝你哥們兒,問題解決了。 – Rangtian